Another update for the vic20. The 16K expansion can now be disabled and I added a 3K expansion. There’s no lock to prevent enabling both ram expansion but I think that doesn’t work (but I have no idea how the real hardware would have handled it).
At least unexpanded and 3K games seems to work now but I still see problems with some basic games. They just stop sometimes with a type mismatch or similar. Anyone has an idea what that could be?
FPGA
vic20 for the MiST released (part 5)
Finally I got some issues ironed out and most games work fine. The port accepts prg uploads for expanded vics and rom cartridges with the auto start sequence. The often as .a0 seen roms needs to be renamed to .prg and the program type in the osd needs to be set to rom.
The vic20 has a 16kb ram expansion in block1 and block2.
Due to the different memory layouts between an unexpanded and an expanded vic currently only games for expanded vics will work. There’re still some glitches on some games but in general it works pretty well. Below some impressions of the core:
Binary: https://code.google.com/p/mist-board/source/browse/trunk/bin/cores/vic20
Source: https://github.com/wsoltys/mist-cores/tree/master/vic20
A2600 and Colecovision core update
I’ve updated the Atari VCS (MA2601) and the Colecovision port for the MiST with scanline support.
Grab it from the google project page.
Apple II+ core update in december
The AppleII+ core for the MiST got a small update. I’ve added scanline support which can be enabled via the OSD.
Didn’t know that it was so easy to implement. Retromaster did some good tutorials about his control module and one feature of the osd overlay is scanline support. I looked into the source and adapt it for the MiST.
I can add it to other cores as well if there’s demand.
vic20 part 4
Sometimes it’s like two steps forward and one step backwards but I already learned a lot of the vic20 inner workings.
The roms with the additional two bytes I mentioned in the previous post are simply autostart cartridge roms “converted” to the .prg format which contains the in memory starting address in the first two bytes.
To upload those roms with the MiST interface would require a continuous block of ram instead of the multi blocks I use currently. But using one big block requires multiplexing of the different signals to the ram (ram and block select).
After I did this the vic20 didn’t work anymore. The screen went mad or – the best case – just blinks with the ready. I didn’t figured out why it behaved like that but using again single blocks for the basic working ram, the screen ram and the screen color ram helped to make it stable again. But cartridge uploads to the big block still won’t work.
I can make an own block for the blk5 memory block again but something is wrong with the multiplexing and it would be nice if I could find and fix it.