Sunday, July 26, 2009

Progress & Bank Switching note

More progress on the test rom:

- Finished Sundance keypad control tests. Also added support for GRID button, SUNS buttons and FIRE buttons.

- Added Sundance 16-Level intensity support. Sundance wasn't displaying vector intensity correctly. This is fixed and Sundance displays intensity as bi-level games do (as least in mame). Thanks Zonn!

- Reworked returns from Bank-switched subroutines - wrote a routine that supports 4x subroutine nesting and can return either within the same bank or switch banks.

- Added vector frame around game selection screen for yoke adjustment.

- Added Gear 4 control for Speed Freak.

I also was able to break TASMs single .obj file into 4 odd/even byte dissected roms to test my 8k bank switched program in the 8k games. Before this I was just testing the new bank-switched program using 2 4k roms in Armor Attack.

In doing this I found a difference in the bank switching between the 8k pcbs and 16k pcbs. The 8k pcbs use banks 1 and 2 (as described in the Cinematronics Application Programming Manual). The 16k pcbs use banks 0 and 1 (and I assume 2 and 3 from the upper 8k). The bank to jump to is set with a setp(bank) statement right before the t4k command.

So the code will be slightly different between 2716 versions and the 2732 versions of Cinematronics programs. Luckily for me, it's just two changes in my macros.h file to generate code for each of them.

No comments:

Post a Comment