Fix handling of RAM cards >= 2GB

This commit is contained in:
pjht 2023-12-20 13:05:34 -06:00
parent 3efad948f2
commit 7787315906
Signed by: pjht
GPG Key ID: 7B5F6AFBEC7EE78E

View File

@ -30,7 +30,7 @@ ramcode:
move.b #0x0, (0xF3, a2) | Disable the ROM
move.l #0x1, (a3) | Enable the RAM at base 0x0
cmpi.l #0x1000000, d2
blt.b sp_ok
bcs.b sp_ok
move.l #0xff0000, d2
sp_ok:
move.l d2, a7
@ -70,7 +70,7 @@ flr_loop:
bne.b flr_loop
move.l (0x4, a1), d1 | Load the card's size into d1
cmp.l d0, d1 | If the current size is less than the largest size found, go back to the start of the loop
ble.b flr_loop
bls.b flr_loop
move.l d1, d0 | Store the size and address of the new largest card in d0 and a0
move.l a1, a0
bra.b flr_loop | Loop back and check the next card
@ -113,7 +113,7 @@ move.l (0x4, a2), d3
move.l (4, a1), a2 | Read the second card's size
move.l (0x4, a2), d4
cmp.l d3, d4 | if d4 <= d3, branch to src_pair_sorted
ble.b src_pair_sorted
bls.b src_pair_sorted
move.l (a1), d3 | Read the first value
move.l (0x4, a1), d4 | Read the second value
move.l d3, (0x4, a1) | Write the first value where the second value was