-
Notifications
You must be signed in to change notification settings - Fork 102
/
TODO.txt
209 lines (197 loc) · 10.3 KB
/
TODO.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
4.2.2
=====
- MIDI Crash
- #bug-report stuff (cant type "-")
- Crash if project name is " " + NSF export.
- Upgrade Android min SDK to make google happy.
- Russian translation.
- JTS song is too big now?
https://discord.com/channels/@me/1256890811921207330/1260320240986755083
4.3.0
=====
- VRC6 square popping how2/kawashin
- https://discord.com/channels/@me/819772561940152321/1231885934656753704
- https://discord.com/channels/352252932953079811/601877396857159680/1243843923298750545
- Experiments saved in `OneDrive\NES\Nes_Vrc6_ProperPopTests.cpp`
- Also locally modified mesen to do same.
- Works good, but pops more often than real HW, why???
- *** RETEST PHASE RESETS WITH THESE CHANGES!
- Separate export VS. DPCM :
https://discord.com/channels/747649221879922840/798008185977176074/1239648701669179452
- Disable NMI during FDS file loading
https://discord.com/channels/747649221879922840/798008185977176074/1235154978486878298
- Look at michel_iwaniec changes
- FDS test for Persune
- Upgrade to latest GLFW, there is some good stuff in there : menu for for macos, etc.
- Check out Yxx stuff from Alex.
https://discord.com/channels/747649221879922840/747649222354010173/1231585732318199850
- YARN : Small hitch beginning of VRC6 songs? Not sure
- YARN : Change ini ROM code persune suggestion.
- Review the copy/paste name matching. Maybe add a rename option.
- Remove ..\..\Tools\ca65 path in sound engine build scripts (have a normal + dev version)
- N163 wave pos inconsistency. we sometimes force to multiple of 2/4. it needs to be 2 everywhere.
- Make ROM export fail if go over limit. Not a warning.
Linux notes
===========
- When slow startup in VM : dbus-launch --exit-with-session mono FamiStudio.exe
- How to recompile with old linux:
- Ubuntu 16.04.6
- Install cmake-gui
- OpenAL Soft
- Install ALSA libs (libasound2-dev)
- Download openal-soft code
- Run cmake-gui in /build folder.
- Configure
- Choose static C + C++ libs
- Choose Release (no debug info)
- Generate.
- make!
- OGG:
- Download ogg/vorbis code
- cmake-gui, static lib, configure
- CMakeFiles/vorbis.dir/flags.make, add -fPIC
C_FLAGS = -O3 -DNDEBUG -fPIC
- Same for OGG
- NesSndEmu + NotSoFatso, run script.
- RtMidi, need to add static C/C++ libs to cmake file.
MacOS notes
===========
- MacOS Sierra, fully patched is 10.12.6, with AppKit version 1504.83.101
- Must compile vorbis on old version too (like Sierra).
- If problem installing MacOS VM, see @DOUG fix at
https://www.geekrar.com/how-to-fix-the-cpu-has-been-disabled-by-the-guest-os/
cpuid.0.eax = "0000:0000:0000:0000:0000:0000:0000:1011"
cpuid.0.ebx = "0111:0101:0110:1110:0110:0101:0100:0111"
cpuid.0.ecx = "0110:1100:0110:0101:0111:0100:0110:1110"
cpuid.0.edx = "0100:1001:0110:0101:0110:1110:0110:1001"
cpuid.1.eax = "0000:0000:0000:0001:0000:0110:0111:0001"
cpuid.1.ebx = "0000:0010:0000:0001:0000:1000:0000:0000"
cpuid.1.ecx = "1000:0010:1001:1000:0010:0010:0000:0011"
cpuid.1.edx = "0000:0111:1000:1011:1111:1011:1111:1111"
- If NAT network doesnt work (problem is only in Monterey right now) do that:
ethernet0.virtualDev = "vmxnet3"
Convert PNG to TGA
==================
"c:\Program Files\ImageMagick-7.1.0-Q8\magick.exe" mogrify -path D:\Dump\Icons\Out\Tga -compress RLE -format tga *.png
Discord Invite Link (new as of April 2024)
==========================================
https://discord.gg/QRCMe595Pv
Android Notes
=============
Key Store
- Alias : FamiStudio
- Pass : Usual x2
- 30 Years
- Only full name entered.
Issues with device monitor not starting:
- Remove new java (11, the one from Microsoft) from the path. Keep the old one (eclipse, 8).
- "C:\Program Files (x86)\Android\android-sdk\tools\lib\monitor-x86_64\monitor.exe"
Article about Famicom volumes
=============================
http://nerdlypleasures.blogspot.com/2018/01/famicom-nes-simple-tweaks-to-restore.html?m=1
Desktop tutorial GIFs
=====================
- 20 fps
- Add mouse highlights
- Add 1px border
- Not global palette (buggy, creates grayscale images sometimes)
Trailer/scroll
==============
- Need to install System.Drawing.Common 5.0.3
- Change net5.0 to net5.0-windows
- Stashed in 933bf502b3f46d8d9fda25fb815cc7602479b4b6.
MkDocs
======
- Install Python
- pip install mkdocs
- pip install mkdocs-bootswatch
- pip install mkdocs-meta-descriptions-plugin
- Modify "%localappdata%\Programs\Python\Python311\Lib\site-packages\mkdocs\themes\mkdocs\base.html"
{% if page.meta and page.meta.description %}
<meta name="description" content="{{ page.meta.description }}">
{% elif config.site_description %}
<meta name="description" content="{{ config.site_description }}">
{% endif %}
Discord
=======
- Invite link: https://discord.gg/QRCMe595Pv
Backlog:
=========
- N163 auto positioning
- NSF/FS comparison bugs:
- N163 : Sound OK, but gets out of phase at the first slide note and remains like that. This is normal, this is due to slide notes not being able to be approximated correctly with fine pitch.
- VRC7 : Very slight pitch issue due to pitch shift (3) used on VRC7 and how we look for best matching note.
- FT Tempo : The slides are too fast in NSF almost all channels.
- Project cleanup : organize insturments/folders by expansion
- Android media player notification option
- Allow changing vibrato depth without resetting (vibrato speed will still reset for the time being)
- Dont compress vibrato envelopes.
- New opcode "override envelope and reset", call only when speed changes.
- Kawashin N163 comparison with NSFPLAY, listen to Wave 1 isolated. (https://discord.com/channels/@me/1093046594062004286/1183464431674470570)
- BUG : Why does Mesen play NSF ~0.3% to ~0.4% faster than us? Export a wav and compare. Affects both ROM and NSF.
- Paste FX values from text. Kain wanted to change DAC slowly, had values to paste.
- Simple parameters for instruments (duty, volume)
- Export selection.
https://discord.com/channels/@me/819772561940152321/1202138717054304306
- Wome kind of warning if multiple VRC7 patch-0 instrument overlaps?
- Can we keep undo/redo buttons on screen to 1280px? Like hide metronome, etc.
- A way to view the preview effect value (grey rectangle). Either draw it on the left edge, or in the piano roll tolltip.
https://discord.com/channels/@me/819772561940152321/1157075515199475732
- Bug import N163 instruments
https://discord.com/channels/@me/819772561940152321/1154660603617607741
- Low slide notes going down + arp going up = glitch. Fix idea : Internally modify the arp to make it less strong based on slide range (ex: div by 4 if doing down 2 octaves).
https://discord.com/channels/747649221879922840/1024388342210642150/1147714295581388910
- Android encoder bitrate is messed up.
- When multiple VRC7 instrument all use patch 0 at same time (like on first note), they all upload it. Its stupid. Only the first one should, or something like that.
- OSC trigger assert
- Option to keep unused samples when exporting to sound engine.
=> Shelved, will need more work.
- How to add to the "open with" list on Android.
- Better autosave names?
- Delete instruments resets play head.
- Export DMC samples on Mobile.
- Option to set snapping auto depending on last resize.
- "Read only" N163 instrument. Just specify RAM position + size. Other instruments will do the writing.
- NSF import issue TF74
- FDS oscilloscope can assert if you use modulation table to produce very low sound.
- Fix "SeparateChannelsExportTndMode"
- Dual APU (VT02) support? Mesen doesnt support it, fuck it.
- S5B is 1 octave off. Periods are 12 bits, so technically can do lower, but we still bottom at A0???
- Shy mode on mobile?
- BUG : Quit menu does nothing on MacOS
- Weird shift when using an external display with different scaling (ex: 100% vs 150%)
- Add effect to select N163 wave. How does it react in FT.
- Full range volume for expansions?
- Different aspect ratios for video export? Somebody asked for square
- Improve linux file dialog (Steo feedback)
- Idea from perkka "When an instrument is selected. Have the channels thats not supported by it slightly faded out, or the channel names that support it in bold or something"
- Do a pass on tooltips for ParamProviders.
- Left resize to preserve release position?
- Display number of selected channels in grid for video export?
- BUG : Drag single pattern (with one note covring the entire pattern) from 1 channel to the other while its playing, the old note keeps playing and adds on top.
- BUG : "theres a bug where when you select a pattern multiple times and you try to change a note, the change is multiplied by the # of patterns you selected", see video.
- Reorder channels for video export.
- Overclocking (2x, 3x, 4x would be a good start).
- Hardware sweep (how to not conflict with smooth vibrato?)
- Scales
- Raw FDS modulation table envelope.
- Sound output selection?
- Give better names to auto saves
- Android : Starting scroll on a slider (in vrc7 instrument) changes the value. How to fix???
- Cleanup : remove duplicated fx values (ex: same volume applied multiple times)
- Paste special, option to rename patterns.
- Uncompressed envelopes
- CLI only EXE (Linux only).
- C0 is hidden by scroll bars
- Piano roll scale on desktop?
- Poppin issue on FDS? See messages from "JHĀKRI" on discord. Change volume on FDS with a blank waveform.
- Dont reset camera in piano roll when deleting instrument (probably to handle case where you were editing the instrument)
- Length counter support? https://www.youtube.com/watch?v=Fg8B3kiVckY
- Double-click to edit name of instrument
- Way to tell if a pattern has other instances, like highlight all instances when mouse over?
- There is no vertical scaling in effect. Vertical scaling is done with piano, there is no piano.
https://discord.com/channels/747649221879922840/747649222354010173/1206908564262617151
- Option to remove high-pitch from triangle. Mesen has an option, but that's now what we need. I think how2B wants more filtering. Filtering options per channel type?
https://discord.com/channels/@me/819772561940152321/1187597131859636276
- Select all/none for list of songs in export dialog
https://discord.com/channels/747649221879922840/747649222354010173/1209404796428357652