Annoying non-orthoganal SC bankswitching
One of the weird characteristics of the SuperCharger is the bankswitching. On one hand it does have some flexibility in mapping the three 2K RAM banks to either the low ($1000-$17FF) or high ($1800-$1FFF) banks, with or without the ROM BIOS (always $1800-$1FFF). But on the other hand, there are a limitted number of possibilities:
D4-D2 bank config 000 3 ROM 001 1 ROM 010 3 1 011 1 3 100 3 ROM 101 2 ROM 110 3 2 111 2 3
The big limitation (IMHO), is there are no options for bank 1 & bank 2 together.
And I just realized I'm going to have to redo the bank layout for Leprechaun . . . Again! I'd just gotten everything worked out using bank 3 low for the kernel with plans for bank 2 high for the 6 digit display. But now I've realized that it makes more sense to put the level timer at the top of the screen, which means bank 2 can be low, which will make it easier to leverage the 6 digit routine for the "load next level" screen. But that means I need to make bank 3 high, since there is no 2+1 layout. This means I need to move the kernel to bank 1 since $1000-$10FF is only accessible in read-only mode, and make sure $1700-$17FF (last page in bank 1) is part of the level data since the SC BIOS will clobber it during multi-load.
So 2+ROM for end of level, load screen and probably title screen, 2+3 for level timer (top of main screen), 1+3 for main kernel and game logic. Hopefully I've gotten it right this time.
Now, one cool thing about the SC is the file doesn't have to be stored in order. Which means the file can be in memory order rather than bank order.
5 Comments
Recommended Comments