+  RHDN Forum Archive
|-+  Romhacking
| |-+  ROM Hacking Discussion
| | |-+  How to distinguise between Lorom00 and Lorom80?
Pages: [1]
Author Topic: How to distinguise between Lorom00 and Lorom80?  (Read 2 times)
Rappa
Guest
« on: February 21, 2009, 10:49:50 am »

Hi

I do know HiRom and LoRom (Zsnex will tells)

I'm using Atlas for the first time. It runs perfecly! (But it cost me months to figure out how to use it, as the readme is so vague). But in the script file, the command

#SMA

require to know the Rom is LoRom00 or LoRom80. How do I know my Rom is 00 or 80?

Can you tell me?

I don't know wethere my Rom is 00 or 80 but I wrote 00 to my script and It seems that nothing wrong happened. Does 00 or 80 really make any different?

Thank you for reading.
KingMike
Guest
« Reply #1 on: February 21, 2009, 09:41:54 pm »

AFAIK, it makes a difference in access time.
If your code is not timing-sensitive, then it probably won't matter.

If this is a text pointer, chances are it won't matter.
Tauwasser
Guest
« Reply #2 on: February 21, 2009, 10:37:51 pm »

I heard access via 0x80 whenever possible just to be speedy. It can't hurt to have code execute fast I guess.

cYa,

Tauwasser
Gideon Zhi
Guest
« Reply #3 on: February 22, 2009, 08:08:43 am »

Quote from: Rappa on February 21, 2009, 10:49:50 am
I don't know wethere my Rom is 00 or 80 but I wrote 00 to my script and It seems that nothing wrong happened. Does 00 or 80 really make any different?

It only makes a difference if you're having Atlas write 24-bit pointers. An easy way to check is to load the game up in a debugger or look at a tracelog of execution; if you're getting addresses in the left-hand column that look like $00/8000 then you've got Lorom00. If your addresses are $80/8000, then you've got Lorom80.
Bongo`
Guest
« Reply #4 on: February 22, 2009, 01:34:48 pm »

Quote from: Rappa on February 21, 2009, 10:49:50 am
Hi

I do know HiRom and LoRom (Zsnex will tells)

I'm using Atlas for the first time. It runs perfecly! (But it cost me months to figure out how to use it, as the readme is so vague). But in the script file, the command

#SMA

require to know the Rom is LoRom00 or LoRom80. How do I know my Rom is 00 or 80?

Can you tell me?

I don't know wethere my Rom is 00 or 80 but I wrote 00 to my script and It seems that nothing wrong happened. Does 00 or 80 really make any different?

Thank you for reading.


  Find the doc about "Snes Kart Format" or something like that.
If I'm not mistaken, If the ROM is a SLOW rom then the addresses will be $00XXXX.
If it is a FAST rom, then the addresses will be $80XXXX. There is a BYTE that tells
you if it's slow or fast rom. That isthe only way I know of it...

// Snes ROM haeder info, not the 512 byte header crap...

BYTE 0 ( $00 ):
ROM Title     : First 21 Bytes

BYTE 22 ( $16 ):
Rom Makeup    : 7654 3210
                0000-0000
                |__| |__|
                |    |
                |    |___Bank Size 0001 = HiROM   (64K Banks Mode 21)
                |                  0000 = Low Rom (32K Banks Mode 20)
                |
                |________ROM Speed 0111 = Fast Rom
                                   0000 = Slow Rom

 I've tested this theory it it did work as listed.
Rappa
Guest
« Reply #5 on: February 23, 2009, 05:08:43 am »

Thank you you all. This is a great help! My Rom is LoRom 80, but at the begining I did not know this and entered Lorom 00 in Atlas. It did work, but several times pointed to the wrong places!

Now I corrected it and everything is OK.
DaMarsMan
Guest
« Reply #6 on: February 23, 2009, 12:24:27 pm »

Use Lunar Adress from now on. It has an auto detect feature.
Pages: [1]  


Powered by SMF 1.1.4 | SMF © 2006-2007, Simple Machines LLC