fultonbot Posted November 3, 2020 Share Posted November 3, 2020 (edited) I'm seeing an issue that only appears when I change my code from using 128KBANKRAM to 128KRAM With 128KBANKRAM my plotchars look like this: But with 128KRAM they don't display Obviously there there are myriad reasons why this might be happening. The config for the game looks like this: set zoneheight 16 displaymode 160A set plotvalueonscreen on set romsize 128kBANKRAM set dlmemory $4000 $7FFF BACKGRND=$00 changecontrol 0 2buttonjoy characterset font alphachars '0123456789abcdefghijklmnopqrstuvwxyz>`?!/.,-_()[]&AB ' This is defined outside of ROM bank1, I was pretty sure these settings are independent of the ROM bank after they have been set in RAM, but maybe not? The title screen code is inside ROM bank1. font.png loaded is loaded into ROM bank8 moving font.png to bank1 doesn't appear to make a difference. When compiled, the only difference I can see from the output is some tine from free-ROM soace chagnes in several banks: working: stack allowance: 19 nested subroutines. the canary is situated at: $1c3 7067 bytes of ROM space left in the main area of bank 1. 2628 bytes of ROM space left in the main area of bank 2. 15504 bytes of ROM space left in the main area of bank 5. 16166 bytes of ROM space left in the main area of bank 6. hiscore assembly: 1670 bytes 5035 bytes of ROM space left in the main area of bank 7. 8029 bytes of ROM space left in the main area of bank 8. $4000 to $7fff used as zone memory, allowing 136 display objects per zone. 1680 bytes left in the 7800basic reserved area. Not working: stack allowance: 19 nested subroutines. the canary is situated at: $1c3 7091 bytes of ROM space left in the main area of bank 1. 2682 bytes of ROM space left in the main area of bank 2. 15504 bytes of ROM space left in the main area of bank 5. 16166 bytes of ROM space left in the main area of bank 6. hiscore assembly: 1670 bytes 5059 bytes of ROM space left in the main area of bank 7. 8029 bytes of ROM space left in the main area of bank 8. $4000 to $7fff used as zone memory, allowing 136 display objects per zone. 1686 bytes left in the 7800basic reserved area. That's all I can find. Any pointers in the right direction would be helpful. 128kbankram_working.log 128kram_notworking.log Edited November 3, 2020 by fultonbot Quote Link to comment Share on other sites More sharing options...
RevEng Posted November 3, 2020 Share Posted November 3, 2020 In which bank is the plotchar called to create that text? I'm a bit hard pressed to come up with a theory as to why 128kbankram would differ from 128kram, outside of you actually bank-switching ram, or emulation issues. Which emulator are the above results in? Quote Link to comment Share on other sites More sharing options...
fultonbot Posted November 3, 2020 Author Share Posted November 3, 2020 5 minutes ago, RevEng said: In which bank is the plotchar called to create that text? I'm a bit hard pressed to come up with a theory as to why 128kbankram would differ from 128kram, outside of you actually bank-switching ram, or emulation issues. Which emulator are the above results in? bank1 A7800 is the emulator launched directly from Atari Dev Studio. Quote Link to comment Share on other sites More sharing options...
RevEng Posted November 3, 2020 Share Posted November 3, 2020 Ok, and it looks like your display loop for the titlescreen is also in bank 1, based on the other graphics imports I see in the log. I'm not sure what's going on... if you could PM me the source it would make it easier to troubleshoot. 1 Quote Link to comment Share on other sites More sharing options...
fultonbot Posted November 3, 2020 Author Share Posted November 3, 2020 3 minutes ago, RevEng said: Ok, and it looks like your display loop for the titlescreen is also in bank 1, based on the other graphics imports I see in the log. I'm not sure what's going on... if you could PM me the source it would make it easier to troubleshoot. Yes, titlescreen loop is in bank1. OK, only if you have time or figure this will help find a bug in the compiler. I don't want to waste your time if you don't have it, as I can still build the game with BANKRAM right now. PMing code zip. Quote Link to comment Share on other sites More sharing options...
fultonbot Posted November 3, 2020 Author Share Posted November 3, 2020 (edited) FYI: @RevEng Found a workaround. Add the "characterset font" command twice and it works Yay! Now I can put a demo up that plays in JS7800. But I have a few more things to fix first.... Edited November 3, 2020 by fultonbot Quote Link to comment Share on other sites More sharing options...
RevEng Posted November 3, 2020 Share Posted November 3, 2020 Yeah, there's something unusual and exceptional happening here, and adding characterset statements shouldn't be required by other programs. Even in this case, it's enough to add one extra characterset command - one in every bank isn't required. Quote Link to comment Share on other sites More sharing options...
fultonbot Posted November 3, 2020 Author Share Posted November 3, 2020 2 minutes ago, RevEng said: Yeah, there's something unusual and exceptional happening here, and adding characterset statements shouldn't be required by other programs. Even in this case, it's enough to add one extra characterset command - one in every bank isn't required. Fixed in message. Thanks for the help!!!! 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.