Jump to content

Photo

bB 256k, 128k, 64k, 32k, Multikernel Frameworks


26 replies to this topic

#26 Gemintronic OFFLINE  

Gemintronic

    Jason S. - Lead Developer & CEO

  • 9,251 posts

Posted Tue Nov 20, 2018 6:05 AM

It doesn't restrict you from using extra characters, but you need to make changes uniformly for all banks.

i.e. When you edit the provided score_graphics.asm in one bank (and change the start of the graphics to allow for more characters) you need to modify the score_graphics.asm graphics start location similarly in all banks.

The underlying reasons you need to do this are 1)bank-switch routines normally need to be the same place in each bank, and 2)the bank-switch switch routine for these frameworks is in the score_graphics file, right after the graphics data.

 

I appreciate the inside info.  I'm almost certain I've bugged you about this before.  Only resorted to this after trying and failing more than a few times :)

 

I saw this topic: http://atariage.com/...re-graphicsasm/

 

..and tried to replace this code:

ifconst ROM2k
ORG $F77C ; was ORG $F7AC
else
ifconst bankswitch
     if bankswitch == 8
     ORG $2F64-bscode_length ; was ORG $2F94-bscode_length
     RORG $FF64-bscode_length ; was RORG $FF94-bscode_length
     endif
     if bankswitch == 16
     ORG $4F64-bscode_length ; was ORG $4F94-bscode_length
     RORG $FF64-bscode_length ; was RORG $FF94-bscode_length
     endif
     if bankswitch == 32
     ORG $8F64-bscode_length ; was ORG $8F94-bscode_length
     RORG $FF64-bscode_length ; was RORG $FF94-bscode_length
     endif
else
     ORG $FF6C ; was ORG $FF9C
endif
endif

The last line with ORG statements appears different in the multi kernel framework.  I'm wondering if this is the key section I have to change (besides adding the extra 6 character data).  I'm also not sure what the changed values should be.  



#27 RevEng ONLINE  

RevEng

    Quadrunner

  • Topic Starter
  • 5,020 posts
  • Bitnik
  • Location:bottom of the stack

Posted Tue Nov 20, 2018 6:33 AM

Yes, it's the last ORG that needs to change, since the frameworks don't use native bB bankswitching.

For 6 new characters the bottom ORG needs to be FF3C.

To get that answer, I just used a calculator with a hex setting and punched in "ff6c−(6×8)"




0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users