Saturday, January 06, 2018

CSpect V1.6

Very minor update to fix an issue with port $303b (the sprite select port). Turns out if you write a value 64 and above (sprites being in slots 0 to 63), the port forces the sprite index to be 0. It should really just take the lower 6 bits and "clock", but it currently doesn't. This "may" be addressed in a later firmware update, but for now I'm keeping the emulator as close as possible.
This fixes a 512 colour test cursor the devs have been using to test the hardware (and CSpect), it was a bug in the program but they're getting away with it due to this hardware check.

EDIT: Another minor change to fix the border colour.

  • Port $303B overflow detection added
  • Border colour should now work again. Paper palette offsets had shifted in line with the actual hardware


Peter Gartside said...

Hi I may have found a bug in NASM error checking
if i write "OR A,value"
I get no error but it compiles to "OR A"


Peter Gartside said...

sorry for this, I may have found another
I created a table of keys for a editor I'm working on with db 'a','b' ....
And the same for caps db 'A','B'.....
But after compiling it changes them all to capitals.


Mike said...

The OR instruction doesn't take 2 parameters, just one.

The second one has been fixed already. However, you should probably use a string for this kind of db "abcdef....". You can get the fix for 'a'->'A' below.