mirror of
https://github.com/elliotnunn/powermac-rom.git
synced 2024-05-28 22:41:35 +00:00
473 lines
11 KiB
ArmAsm
473 lines
11 KiB
ArmAsm
mrBase equ r19
|
|
mrScratch equ r26
|
|
mrCtr equ r17
|
|
mrHigh equ r20
|
|
mrLow equ r21
|
|
|
|
|
|
MRLoad1241
|
|
lbz mrScratch, -8(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
insrwi mrHigh, mrScratch, 8, 0
|
|
|
|
MRLoad241
|
|
lhz mrScratch, -7(mrBase)
|
|
subi mrCtr, mrCtr, 4
|
|
insrwi mrHigh, mrScratch, 16, 8
|
|
b MRLoad41
|
|
|
|
MRLoad141
|
|
lbz mrScratch, -6(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
insrwi mrHigh, mrScratch, 8, 16
|
|
|
|
MRLoad41
|
|
lwz mrScratch, -5(mrBase)
|
|
subi mrCtr, mrCtr, 8
|
|
inslwi mrHigh, mrScratch, 8, 24
|
|
insrwi mrLow, mrScratch, 24, 0
|
|
b MRLoad1
|
|
|
|
MRLoad1421
|
|
lbz mrScratch, -8(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
insrwi mrHigh, mrScratch, 8, 0
|
|
|
|
MRLoad421
|
|
lwz mrScratch, -7(mrBase)
|
|
subi mrCtr, mrCtr, 8
|
|
inslwi mrHigh, mrScratch, 24, 8
|
|
insrwi mrLow, mrScratch, 8, 0
|
|
b MRLoad21
|
|
|
|
MRLoad1221
|
|
lbz mrScratch, -6(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
insrwi mrHigh, mrScratch, 8, 16
|
|
|
|
MRLoad221
|
|
lhz mrScratch, -5(mrBase)
|
|
subi mrCtr, mrCtr, 4
|
|
rlwimi mrHigh, mrScratch, 24, 24, 31
|
|
insrwi mrLow, mrScratch, 8, 0
|
|
b MRLoad21
|
|
|
|
MRLoad121
|
|
lbz mrScratch, -4(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
insrwi mrLow, mrScratch, 8, 0
|
|
|
|
MRLoad21
|
|
lhz mrScratch, -3(mrBase)
|
|
subi mrCtr, mrCtr, 4
|
|
insrwi mrLow, mrScratch, 16, 8
|
|
b MRLoad1
|
|
|
|
MRLoad11
|
|
lbz mrScratch, -2(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
insrwi mrLow, mrScratch, 8, 16
|
|
|
|
MRLoad1
|
|
lbz mrScratch, -1(mrBase)
|
|
insrwi mrLow, mrScratch, 8, 24
|
|
b MRExecuted
|
|
|
|
MRLoad242
|
|
lhz mrScratch, -8(mrBase)
|
|
subi mrCtr, mrCtr, 4
|
|
insrwi mrHigh, mrScratch, 16, 0
|
|
b MRLoad42
|
|
|
|
MRLoad142
|
|
lbz mrScratch, -7(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
insrwi mrHigh, mrScratch, 8, 8
|
|
|
|
MRLoad42
|
|
lwz mrScratch, -6(mrBase)
|
|
subi mrCtr, mrCtr, 8
|
|
inslwi mrHigh, mrScratch, 16, 16
|
|
insrwi mrLow, mrScratch, 16, 0
|
|
b MRLoad2
|
|
|
|
MRLoad122
|
|
lbz mrScratch, -5(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
insrwi mrHigh, mrScratch, 8, 24
|
|
b MRLoad22
|
|
|
|
MRLoad12
|
|
lbz mrScratch, -3(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
insrwi mrLow, mrScratch, 8, 8
|
|
b MRLoad2
|
|
|
|
MRLoad44
|
|
lwz mrHigh, -8(mrBase)
|
|
subi mrCtr, mrCtr, 8
|
|
lwz mrLow, -4(mrBase)
|
|
b MRExecuted
|
|
|
|
MRLoad124
|
|
lbz mrScratch, -7(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
insrwi mrHigh, mrScratch, 8, 8
|
|
|
|
MRLoad24
|
|
lhz mrScratch, -6(mrBase)
|
|
subi mrCtr, mrCtr, 4
|
|
insrwi mrHigh, mrScratch, 16, 16
|
|
lwz mrLow, -4(mrBase)
|
|
b MRExecuted
|
|
|
|
MRLoad14
|
|
lbz mrScratch, -5(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
insrwi mrHigh, mrScratch, 8, 24
|
|
lwz mrLow, -4(mrBase)
|
|
b MRExecuted
|
|
|
|
MRLoad4
|
|
bc BO_IF, 23, @atomic
|
|
lwz mrLow, -4(mrBase)
|
|
b MRExecuted
|
|
@atomic
|
|
li mrScratch, -4
|
|
lwarx mrLow, mrScratch, mrBase
|
|
b MRExecuted
|
|
|
|
MRLoad8
|
|
lwz mrHigh, -8(mrBase)
|
|
lwz mrLow, -4(mrBase)
|
|
b MRExecuted
|
|
|
|
MRLoadVector
|
|
clrrwi mrScratch, r25, 10
|
|
rlwimi mrScratch, mrCtr, 14, 24, 28
|
|
addi mrScratch, mrScratch, LVXArray - FDP
|
|
mtlr mrScratch
|
|
mr mrScratch, r18
|
|
_bset r11, r11, 6
|
|
blr
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
MRStore1241
|
|
srwi mrScratch, mrHigh, 24
|
|
stb mrScratch, -8(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
|
|
MRStore241
|
|
srwi mrScratch, mrHigh, 8
|
|
sth mrScratch, -7(mrBase)
|
|
subi mrCtr, mrCtr, 4
|
|
b MRStore41
|
|
|
|
MRStore141
|
|
srwi mrScratch, mrHigh, 8
|
|
stb mrScratch, -6(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
|
|
MRStore41
|
|
srwi mrScratch, mrLow, 8
|
|
insrwi mrScratch, mrHigh, 8, 0
|
|
stw mrScratch, -5(mrBase)
|
|
subi mrCtr, mrCtr, 8
|
|
stb mrLow, -1(mrBase)
|
|
b MRExecuted
|
|
|
|
MRStore1421
|
|
srwi mrScratch, mrHigh, 24
|
|
stb mrScratch, -8(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
|
|
MRStore421
|
|
srwi mrScratch, mrLow, 24
|
|
insrwi mrScratch, mrHigh, 24, 0
|
|
stw mrScratch, -7(mrBase)
|
|
subi mrCtr, mrCtr, 8
|
|
b MRStore21
|
|
|
|
MRStore1221
|
|
srwi mrScratch, mrHigh, 8
|
|
stb mrScratch, -6(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
|
|
MRStore221
|
|
srwi mrScratch, mrLow, 24
|
|
insrwi mrScratch, mrHigh, 8, 16
|
|
sth mrScratch, -5(mrBase)
|
|
subi mrCtr, mrCtr, 4
|
|
b MRStore21
|
|
|
|
MRStore121
|
|
srwi mrScratch, mrLow, 24
|
|
stb mrScratch, -4(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
|
|
MRStore21
|
|
srwi mrScratch, mrLow, 8
|
|
sth mrScratch, -3(mrBase)
|
|
subi mrCtr, mrCtr, 4
|
|
stb mrLow, -1(mrBase)
|
|
b MRExecuted
|
|
|
|
MRStore11
|
|
srwi mrScratch, mrLow, 8
|
|
stb mrScratch, -2(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
|
|
MRStore1
|
|
stb mrLow, -1(mrBase)
|
|
b MRExecuted
|
|
|
|
MRStore242
|
|
srwi mrScratch, mrHigh, 16
|
|
sth mrScratch, -8(mrBase)
|
|
subi mrCtr, mrCtr, 4
|
|
b MRStore42
|
|
|
|
MRStore142
|
|
srwi mrScratch, mrHigh, 16
|
|
stb mrScratch, -7(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
|
|
MRStore42
|
|
srwi mrScratch, mrLow, 16
|
|
insrwi mrScratch, mrHigh, 16, 0
|
|
stw mrScratch, -6(mrBase)
|
|
subi mrCtr, mrCtr, 8
|
|
sth mrLow, -2(mrBase)
|
|
b MRExecuted
|
|
|
|
MRStore122
|
|
stb mrHigh, -5(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
b MRStore22
|
|
|
|
MRStore12
|
|
srwi mrScratch, mrLow, 16
|
|
stb mrScratch, -3(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
|
|
MRStore2
|
|
sth mrLow, -2(mrBase)
|
|
b MRExecuted
|
|
|
|
MRStore44
|
|
stw mrHigh, -8(mrBase)
|
|
subi mrCtr, mrCtr, 8
|
|
stw mrLow, -4(mrBase)
|
|
b MRExecuted
|
|
|
|
MRStore124
|
|
srwi mrScratch, mrHigh, 16
|
|
stb mrScratch, -7(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
|
|
MRStore24
|
|
sth mrHigh, -6(mrBase)
|
|
subi mrCtr, mrCtr, 4
|
|
stw mrLow, -4(mrBase)
|
|
b MRExecuted
|
|
|
|
MRStore14
|
|
stb mrHigh, -5(mrBase)
|
|
subi mrCtr, mrCtr, 2
|
|
stw mrLow, -4(mrBase)
|
|
b MRExecuted
|
|
|
|
MRStore4
|
|
bc BO_IF, 23, @atomic
|
|
stw mrLow, -4(mrBase)
|
|
b MRExecuted
|
|
@atomic
|
|
li mrScratch, -4
|
|
stwcx. mrLow, mrScratch, mrBase
|
|
isync
|
|
mfcr mrScratch
|
|
rlwimi r13, mrScratch, 0, 0, 3
|
|
b MRExecuted
|
|
|
|
MRStore8
|
|
stw mrHigh, -8(mrBase)
|
|
stw mrLow, -4(mrBase)
|
|
b MRExecuted
|
|
|
|
MRStoreVector
|
|
clrrwi mrScratch, r25, 10
|
|
rlwimi mrScratch, mrCtr, 14, 24, 28
|
|
addi mrScratch, mrScratch, STVXArray - FDP
|
|
mtlr mrScratch
|
|
mr mrScratch, r18
|
|
_bset r11, r11, 6
|
|
blr
|
|
|
|
HalfWordTableEntry 0, MRStoreVector
|
|
HalfWordTableEntry 1, MRStoreVector
|
|
HalfWordTableEntry 2, MRStoreVector
|
|
HalfWordTableEntry 3, MRStoreVector
|
|
HalfWordTableEntry 4, MRStoreVector
|
|
HalfWordTableEntry 5, MRStoreVector
|
|
HalfWordTableEntry 6, MRStoreVector
|
|
HalfWordTableEntry 7, MRStoreVector
|
|
|
|
HalfWordTableEntry 8, MRLoadVector
|
|
HalfWordTableEntry 9, MRLoadVector
|
|
HalfWordTableEntry 10, MRLoadVector
|
|
HalfWordTableEntry 11, MRLoadVector
|
|
HalfWordTableEntry 12, MRLoadVector
|
|
HalfWordTableEntry 13, MRLoadVector
|
|
HalfWordTableEntry 14, MRLoadVector
|
|
HalfWordTableEntry 15, MRLoadVector
|
|
|
|
HalfWordTableEntry 16, MRStore1
|
|
HalfWordTableEntry 17, MRStore1
|
|
HalfWordTableEntry 18, MRStore1
|
|
HalfWordTableEntry 19, MRStore1
|
|
HalfWordTableEntry 20, MRStore1
|
|
HalfWordTableEntry 21, MRStore1
|
|
HalfWordTableEntry 22, MRStore1
|
|
HalfWordTableEntry 23, MRStore1
|
|
|
|
HalfWordTableEntry 24, MRLoad1
|
|
HalfWordTableEntry 25, MRLoad1
|
|
HalfWordTableEntry 26, MRLoad1
|
|
HalfWordTableEntry 27, MRLoad1
|
|
HalfWordTableEntry 28, MRLoad1
|
|
HalfWordTableEntry 29, MRLoad1
|
|
HalfWordTableEntry 30, MRLoad1
|
|
HalfWordTableEntry 31, MRLoad1
|
|
|
|
HalfWordTableEntry 32, MRStore2
|
|
HalfWordTableEntry 33, MRStore11
|
|
HalfWordTableEntry 34, MRStore2
|
|
HalfWordTableEntry 35, MRStore11
|
|
HalfWordTableEntry 36, MRStore2
|
|
HalfWordTableEntry 37, MRStore11
|
|
HalfWordTableEntry 38, MRStore2
|
|
HalfWordTableEntry 39, MRStore11
|
|
|
|
HalfWordTableEntry 40, MRLoad2
|
|
HalfWordTableEntry 41, MRLoad11
|
|
HalfWordTableEntry 42, MRLoad2
|
|
HalfWordTableEntry 43, MRLoad11
|
|
HalfWordTableEntry 44, MRLoad2
|
|
HalfWordTableEntry 45, MRLoad11
|
|
HalfWordTableEntry 46, MRLoad2
|
|
HalfWordTableEntry 47, MRLoad11
|
|
|
|
HalfWordTableEntry 48, MRStore12
|
|
HalfWordTableEntry 49, MRStore21
|
|
HalfWordTableEntry 50, MRStore12
|
|
HalfWordTableEntry 51, MRStore21
|
|
HalfWordTableEntry 52, MRStore12
|
|
HalfWordTableEntry 53, MRStore21
|
|
HalfWordTableEntry 54, MRStore12
|
|
HalfWordTableEntry 55, MRStore21
|
|
|
|
HalfWordTableEntry 56, MRLoad12
|
|
HalfWordTableEntry 57, MRLoad21
|
|
HalfWordTableEntry 58, MRLoad12
|
|
HalfWordTableEntry 59, MRLoad21
|
|
HalfWordTableEntry 60, MRLoad12
|
|
HalfWordTableEntry 61, MRLoad21
|
|
HalfWordTableEntry 62, MRLoad12
|
|
HalfWordTableEntry 63, MRLoad21
|
|
|
|
HalfWordTableEntry 64, MRStore4
|
|
HalfWordTableEntry 65, MRStore121
|
|
HalfWordTableEntry 66, MRStore22
|
|
HalfWordTableEntry 67, MRStore121
|
|
HalfWordTableEntry 68, MRStore4
|
|
HalfWordTableEntry 69, MRStore121
|
|
HalfWordTableEntry 70, MRStore22
|
|
HalfWordTableEntry 71, MRStore121
|
|
|
|
HalfWordTableEntry 72, MRLoad4
|
|
HalfWordTableEntry 73, MRLoad121
|
|
HalfWordTableEntry 74, MRLoad22
|
|
HalfWordTableEntry 75, MRLoad121
|
|
HalfWordTableEntry 76, MRLoad4
|
|
HalfWordTableEntry 77, MRLoad121
|
|
HalfWordTableEntry 78, MRLoad22
|
|
HalfWordTableEntry 79, MRLoad121
|
|
|
|
HalfWordTableEntry 80, MRStore14
|
|
HalfWordTableEntry 81, MRStore41
|
|
HalfWordTableEntry 82, MRStore14
|
|
HalfWordTableEntry 83, MRStore221
|
|
HalfWordTableEntry 84, MRStore14
|
|
HalfWordTableEntry 85, MRStore41
|
|
HalfWordTableEntry 86, MRStore14
|
|
HalfWordTableEntry 87, MRStore221
|
|
|
|
HalfWordTableEntry 88, MRLoad14
|
|
HalfWordTableEntry 89, MRLoad41
|
|
HalfWordTableEntry 90, MRLoad122
|
|
HalfWordTableEntry 91, MRLoad221
|
|
HalfWordTableEntry 92, MRLoad14
|
|
HalfWordTableEntry 93, MRLoad41
|
|
HalfWordTableEntry 94, MRLoad122
|
|
HalfWordTableEntry 95, MRLoad221
|
|
|
|
HalfWordTableEntry 96, MRStore24
|
|
HalfWordTableEntry 97, MRStore141
|
|
HalfWordTableEntry 98, MRStore42
|
|
HalfWordTableEntry 99, MRStore1221
|
|
HalfWordTableEntry 100, MRStore24
|
|
HalfWordTableEntry 101, MRStore141
|
|
HalfWordTableEntry 102, MRStore42
|
|
HalfWordTableEntry 103, MRStore1221
|
|
|
|
HalfWordTableEntry 104, MRLoad24
|
|
HalfWordTableEntry 105, MRLoad141
|
|
HalfWordTableEntry 106, MRLoad42
|
|
HalfWordTableEntry 107, MRLoad1221
|
|
HalfWordTableEntry 108, MRLoad24
|
|
HalfWordTableEntry 109, MRLoad141
|
|
HalfWordTableEntry 110, MRLoad42
|
|
HalfWordTableEntry 111, MRLoad1221
|
|
|
|
HalfWordTableEntry 112, MRStore124
|
|
HalfWordTableEntry 113, MRStore241
|
|
HalfWordTableEntry 114, MRStore142
|
|
HalfWordTableEntry 115, MRStore421
|
|
HalfWordTableEntry 116, MRStore124
|
|
HalfWordTableEntry 117, MRStore241
|
|
HalfWordTableEntry 118, MRStore142
|
|
HalfWordTableEntry 119, MRStore421
|
|
|
|
HalfWordTableEntry 120, MRLoad124
|
|
HalfWordTableEntry 121, MRLoad241
|
|
HalfWordTableEntry 122, MRLoad142
|
|
HalfWordTableEntry 123, MRLoad421
|
|
HalfWordTableEntry 124, MRLoad124
|
|
HalfWordTableEntry 125, MRLoad241
|
|
HalfWordTableEntry 126, MRLoad142
|
|
HalfWordTableEntry 127, MRLoad421
|
|
|
|
HalfWordTableEntry 128, MRStore8
|
|
HalfWordTableEntry 129, MRStore1241
|
|
HalfWordTableEntry 130, MRStore242
|
|
HalfWordTableEntry 131, MRStore1421
|
|
HalfWordTableEntry 132, MRStore44
|
|
HalfWordTableEntry 133, MRStore1241
|
|
HalfWordTableEntry 134, MRStore242
|
|
HalfWordTableEntry 135, MRStore1421
|
|
|
|
HalfWordTableEntry 136, MRLoad8
|
|
HalfWordTableEntry 137, MRLoad1241
|
|
HalfWordTableEntry 138, MRLoad242
|
|
HalfWordTableEntry 139, MRLoad1421
|
|
HalfWordTableEntry 140, MRLoad44
|
|
HalfWordTableEntry 141, MRLoad1241
|
|
HalfWordTableEntry 142, MRLoad242
|
|
HalfWordTableEntry 143, MRLoad1421
|
|
|