After testing 4b first run, there are a few issues. Updated to 4b2 with: Corrected L/R output. ADC bias improvement. ADC preamp out/in- corrected. Moved silkscreen name!
Added some untested kicad designs for pokeymax v4b, pokeymax v4.5, pokeymin v1 and anticmax v1
spdif seems to have left/right backwards
Incorrect clock for sio data mixing
Added audio signal detector
Break out audio detector to own module and improve. Now with zero crossing support.
Missing comment
Correct adc silence threshold for 1x/2x. Correct ADC BITLEN for CIC_STAGES*log2(OVERSAMPLE_RATE)
This is not the right fix. Investing then will commit the right fix.
Horrible screeching on *2, I think down to this
Added another file needed to build
Add some unused stuff to the qsf
Prepare for 1.29 release
Added volume for SIO DATA and ADC
Only reset serial port on initmode (thanks for detailed bug report to phaeron). This needs testing against real pokey on the harness when I get time, but applying the simple implementation for now.
Flip sign for spdif. When adc silenced revert back to mixing sio data a bit.
Increase ADC volume. Try to decrease ADC noise by digital methods: FIR filter of problematic frequencies, silence ADC when nothing playing. Disable ADC for models that do not fit these features (M02/M08 with sample memory)
Fix for 10M16 flash
Do not overlock keyboard io expander so much!
Some names clash in the hash. Add an extra layer. Also if sidwavedataneeded the value is blank, not zero. So the pof creation fails!
For some reason the M16 core turns write protect on after erasing some sectors. Guess: Perhaps some sectors do not exist on some device and in error case it protects itself?
Putting back to v23 ip. The flash 16 write does not work on old or new versions! Something else is up...
Put the flash ip back, the old ip seems better!
Apply it to 04 and 08 anyway, consider it safer.
This fix does not see needed any more on 08, but does on 16. It fails to read it otherwise.
Added sidcfg build
Updated sidcfg. To keep it in sync just use one set of code with a few ifdefs.
Added comment
Pad core.bin out to the actual flash size. Correct version parameter.
Corrected dir name. Fix the parameter passing to the qsf!
Explain where sid offets come from in build.sh
Back to front. Added missing tool too!
Move tool build to own script. Added find_offset build.
v2 is not a special version any more with new build script
Trivial binary offset search tool
Split into a block per version. Generate code automatically since I was getting worse and worse. Some clearly overlap. Automatic offsets for patching wave data into CFM. Generate core.bin from svf blocks.
Refreshed
ip upgrade to q23
Add other sigmadelta clock
Rest of ip upgrade to q23
Make flash from the svf rather than the pof
Switch to single script to add the sid wave data, with automatic offsets
Updated ip to quartus v23 version
Correct offsets again
pokey1 was missing. Also pokey in sidmax should be the cut down one with keyboard and sio, even the first one!
Add wide delay line
Had a combinatorial loop, register flash_read. This needs testing on all 04/08/16 combinations!
Mixer interface changed slightly
Sensitivity list missing some entries
Update offsets for new quartus versions (TODO: Automate)
Improving timing by registering on the input
Sidmax was silent since the pof generation was using a non-existent .cof since it did not detect it as a sid version!
Added 10M02 stereo version for v4
Improve phi timing. Try to improve RDY timing.
Improve AN sample timing
Decrease current on FO0, cuts glitches
Correct audio outputs, I got them back to front on the board design
A few more configs. Note that spdif does not fit on m08 with the full setup.
Do not feed back SIO noise if using the ADC, since we will have it from that. Allows playing stereo tapes as mono through the 1010 otherwise the analog tracks comes in as digital noise!
Mix ADC in
Fix IO standard for the ADC
Added missing lvds
Fix K output, still does not type but they toggle at least!
First cut of pokeymaxv4 core, untested as yet and probably some mistakes. Might also have broken v2/v3, need to test they still build/work
Fixed limit, to cover small vias with solder mask
Not a gerber!
Try to fit in jlcpcb design rules for 2 layer, larger drills
Added 4 layer version. Just with a polygon fill of 3.3v and GND. Reason: drill size needs 4 layer with jlcpcb
Renumbering left it called pokeymax1
Added gerbers
Added mountsmd files
First cut, never made pokeymax v4
Pure digital 40 pin chip. Needs 5v and gnd wiring on, then can be 6502, antic (I do not have this working yet) or gtia
Seems to be the latest one, I guess it has the spur removal which seems to be a board only setting and schematic is unchanged
Added sidmax schematic
Added gerbers for pokeymaxv2b,pokeymaxv3,quad eliminator and sidmax. There are also some brd/sch files though not the latest in all cases
Only poll clock at sensible times
Added wide delay line for register delays
Add 10M16 mono, handy for debugging
External clock triggers pulse on both edges. pot resets to 01 instead of 00. cycle exact corrections to audctl.
Bumped version
Missed commit, needed to recompute pof file hash
Fix for 10M08 not reading reliably since >=1.24
Corrected config access value and number of covox registers
Dev guide 1.22
Writes still allowed when disabled!
Synchronous clock length bug fix
Moved pokey to own folder
Moved pokey to a folder
Update to work with latest stuff from pokeymax
Cut 6581 bias, distortion head on basil!
Add disable support for each audio output. Split config screen into pages since it was getting too long!
Two tone reset suppresses the pulse
Added verify on store config
_ can be in var...
Allow different settings for with and without sid (for post divide!)