mirror of
https://github.com/elliotnunn/powermac-rom.git
synced 2024-09-08 10:54:24 +00:00
more
This commit is contained in:
parent
f1b71713d3
commit
7b62fa404d
@ -586,7 +586,7 @@ TestIntMaskInit ds.l 1 ; 670 ; These are all copied from ConfigInfo...
|
|||||||
PostIntMaskInit ds.l 1 ; 674
|
PostIntMaskInit ds.l 1 ; 674
|
||||||
ClearIntMaskInit ds.l 1 ; 678
|
ClearIntMaskInit ds.l 1 ; 678
|
||||||
PA_EmulatorIplValue ds.l 1 ; 67c ; Physical ptr into EDP
|
PA_EmulatorIplValue ds.l 1 ; 67c ; Physical ptr into EDP
|
||||||
SharedMemoryAddrPlus ds.l 1 ; 680 ; Really not sure
|
DebugIntPtr ds.l 1 ; 680 ; Within (debug?) shared memory
|
||||||
PA_PageMapStart ds.l 1 ; 684 ; Physical ptr to PageMap (= KDP+0x920)
|
PA_PageMapStart ds.l 1 ; 684 ; Physical ptr to PageMap (= KDP+0x920)
|
||||||
PageAttributeInit ds.l 1 ; 688 ; defaults for page table entries (see ConfigInfo)
|
PageAttributeInit ds.l 1 ; 688 ; defaults for page table entries (see ConfigInfo)
|
||||||
|
|
||||||
|
4
NanoKernel/NKInit.s
Normal file → Executable file
4
NanoKernel/NKInit.s
Normal file → Executable file
@ -196,7 +196,7 @@ InitKernelGlobals
|
|||||||
|
|
||||||
lwz r12, NKConfigurationInfo.SharedMemoryAddr(rCI)
|
lwz r12, NKConfigurationInfo.SharedMemoryAddr(rCI)
|
||||||
addi r12, r12, 0x7c
|
addi r12, r12, 0x7c
|
||||||
stw r12, KDP.SharedMemoryAddrPlus(r1)
|
stw r12, KDP.DebugIntPtr(r1)
|
||||||
|
|
||||||
lwz r12, NKConfigurationInfo.PageAttributeInit(rCI)
|
lwz r12, NKConfigurationInfo.PageAttributeInit(rCI)
|
||||||
stw r12, KDP.PageAttributeInit(r1)
|
stw r12, KDP.PageAttributeInit(r1)
|
||||||
@ -261,7 +261,7 @@ InitInfoRecords
|
|||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
|
|
||||||
SetProcessorInfo
|
InitProcessorInfo
|
||||||
mfpvr r12
|
mfpvr r12
|
||||||
stw r12, KDP.ProcInfo.ProcessorVersionReg(r1)
|
stw r12, KDP.ProcInfo.ProcessorVersionReg(r1)
|
||||||
srwi r12, r12, 16
|
srwi r12, r12, 16
|
||||||
|
@ -1,5 +1,207 @@
|
|||||||
; AUTO-GENERATED SYMBOL LIST
|
; AUTO-GENERATED SYMBOL LIST
|
||||||
|
|
||||||
|
########################################################################
|
||||||
|
|
||||||
|
_align 6
|
||||||
|
IntExternal0
|
||||||
|
mfsprg r1, 0 ; Init regs and increment ctr
|
||||||
|
stw r0, EWA.r2(r1)
|
||||||
|
stw r2, EWA.r2(r1)
|
||||||
|
lwz r2, KDP.NKInfo.ExternalIntCount(r1)
|
||||||
|
stw r3, EWA.r3(r1)
|
||||||
|
addi r2, r2, 1
|
||||||
|
stw r2, KDP.NKInfo.ExternalIntCount(r1)
|
||||||
|
|
||||||
|
mfmsr r2 ; Save a self-ptr to FF880000... why?
|
||||||
|
lis r3, 0xFF88
|
||||||
|
_bset r0, r2, bitMsrDR
|
||||||
|
stw r4, EWA.r4(r1)
|
||||||
|
stw r5, EWA.r5(r1)
|
||||||
|
mfsrr0 r4
|
||||||
|
mfsrr1 r5
|
||||||
|
mtmsr r0
|
||||||
|
stw r3, 0(r3)
|
||||||
|
mtmsr r2
|
||||||
|
mtsrr0 r4
|
||||||
|
mrsrr1 r5
|
||||||
|
lwz r4, EWA.r4(r1)
|
||||||
|
lwz r5, EWA.r5(r1)
|
||||||
|
|
||||||
|
lwz r2, KDP.DebugIntPtr(r1) ; Query the shared mem (debug?) for int num
|
||||||
|
mfcr r0
|
||||||
|
lha r2, 0(r2)
|
||||||
|
lwz r3, KDP.PA_EmulatorIplValue(r1)
|
||||||
|
rlwinm. r2, r2, 0, 0x80000007
|
||||||
|
ori r2, r2, 0x8000
|
||||||
|
sth r2, 0(r3)
|
||||||
|
mfsprg r2, 2
|
||||||
|
lwz r3, EWA.r3(r1)
|
||||||
|
mtlr r2
|
||||||
|
beq @return ; 0 -> no interrupt
|
||||||
|
bgt @clear ; negative -> clear interrupt
|
||||||
|
; positive -> post interrupt
|
||||||
|
|
||||||
|
lwz r2, KDP.PostIntMaskInit(r1) ; Post an interrupt via Cond Reg
|
||||||
|
or r0, r0, r2
|
||||||
|
|
||||||
|
@return
|
||||||
|
mtcr r0 ; Set CR and return
|
||||||
|
lwz r0, EWA.r0(r1)
|
||||||
|
lwz r2, EWA.r2(r1)
|
||||||
|
mfsprg r1, 1
|
||||||
|
rfi
|
||||||
|
|
||||||
|
@clear
|
||||||
|
lwz r2, KDP.ClearIntMaskInit(r1) ; Clear an interrupt via Cond Reg
|
||||||
|
and r0, r0, r2
|
||||||
|
b @return
|
||||||
|
|
||||||
|
########################################################################
|
||||||
|
|
||||||
|
_align 6
|
||||||
|
IntLookupTable
|
||||||
|
dc.l 0, 1, 2, 2, 4, 4, 4, 4
|
||||||
|
dc.l 3, 3, 3, 3, 4, 4, 4, 4
|
||||||
|
dc.l 4, 4, 4, 4, 4, 4, 4, 4
|
||||||
|
dc.l 4, 4, 4, 4, 4, 4, 4, 4
|
||||||
|
dc.l 7, 7, 7, 7, 7, 7, 7, 7
|
||||||
|
dc.l 7, 7, 7, 7, 7, 7, 7, 7
|
||||||
|
dc.l 7, 7, 7, 7, 7, 7, 7, 7
|
||||||
|
dc.l 7, 7, 7, 7, 7, 7, 7, 7
|
||||||
|
|
||||||
|
_align 6
|
||||||
|
IntExternal1
|
||||||
|
mfsprg r1, 0 ; Init regs and increment ctr
|
||||||
|
stw r0, EWA.r2(r1)
|
||||||
|
stw r2, EWA.r2(r1)
|
||||||
|
lwz r2, KDP.NKInfo.ExternalIntCount(r1)
|
||||||
|
stw r3, EWA.r3(r1)
|
||||||
|
addi r2, r2, 1
|
||||||
|
stw r2, KDP.NKInfo.ExternalIntCount(r1)
|
||||||
|
|
||||||
|
lis r2, 0x50F3 ; Query OpenPIC at 50F2A000
|
||||||
|
mfmsr r2
|
||||||
|
_bset r0, r2, bitMsrDR
|
||||||
|
stw r4, EWA.r4(r1)
|
||||||
|
stw r5, EWA.r5(r1)
|
||||||
|
mfsrr0 r4
|
||||||
|
mfsrr1 r5
|
||||||
|
mtmsr r0
|
||||||
|
li r0, 0xC0
|
||||||
|
stb r0, -0x6000(r2)
|
||||||
|
eieio
|
||||||
|
lbz r0, -0x6000(r2)
|
||||||
|
mtmsr r2
|
||||||
|
mtsrr0 r4
|
||||||
|
mrsrr1 r5
|
||||||
|
lwz r4, EWA.r4(r1)
|
||||||
|
lwz r5, EWA.r5(r1)
|
||||||
|
|
||||||
|
lwz r3, KDP.PA_NanoKernelCode ; Loop that number up in the table
|
||||||
|
rlwimi r3, r0, 0, 0x0000003F
|
||||||
|
lbz r2, IntLookupTable-NKTop(r3)
|
||||||
|
mfcr r0
|
||||||
|
lwz r3, KDP.PA_EmulatorIplValue(r1)
|
||||||
|
clrlwi. r2, r2, 29
|
||||||
|
sth r2, 0(r3)
|
||||||
|
mfsprg r2, 2
|
||||||
|
lwz r3, EWA.r3(r1)
|
||||||
|
mtlr r2
|
||||||
|
beq @clear ; 0 -> clear interrupt
|
||||||
|
; nonzero -> post interrupt
|
||||||
|
|
||||||
|
lwz r2, KDP.PostIntMaskInit(r1) ; Post an interrupt via Cond Reg
|
||||||
|
or r0, r0, r2
|
||||||
|
|
||||||
|
@return
|
||||||
|
mtcr r0 ; Set CR and return
|
||||||
|
lwz r0, EWA.r0(r1)
|
||||||
|
lwz r2, EWA.r2(r1)
|
||||||
|
mfsprg r1, 1
|
||||||
|
rfi
|
||||||
|
|
||||||
|
@clear
|
||||||
|
lwz r2, KDP.ClearIntMaskInit(r1) ; Clear an interrupt via Cond Reg
|
||||||
|
and r0, r0, r2
|
||||||
|
b @return
|
||||||
|
|
||||||
|
########################################################################
|
||||||
|
|
||||||
|
_align 6
|
||||||
|
IntExternal2
|
||||||
|
mfsprg r1, 0 ; Init regs and increment ctr
|
||||||
|
stw r0, EWA.r2(r1)
|
||||||
|
stw r2, EWA.r2(r1)
|
||||||
|
lwz r2, KDP.NKInfo.ExternalIntCount(r1)
|
||||||
|
stw r3, EWA.r3(r1)
|
||||||
|
addi r2, r2, 1
|
||||||
|
stw r2, KDP.NKInfo.ExternalIntCount(r1)
|
||||||
|
|
||||||
|
lis r2, 0xF300 ; Query OpenPIC at F3000028/C
|
||||||
|
mfmsr r2
|
||||||
|
_bset r3, r2, bitMsrDR
|
||||||
|
stw r4, EWA.r4(r1)
|
||||||
|
stw r5, EWA.r5(r1)
|
||||||
|
mfsrr0 r4
|
||||||
|
mfsrr1 r5
|
||||||
|
mtmsr r3
|
||||||
|
lis r3, 0x8000
|
||||||
|
stw r3, 0x28(r2)
|
||||||
|
eieio
|
||||||
|
lwz r3, 0x2C(r2)
|
||||||
|
mtmsr r0
|
||||||
|
mtsrr0 r4
|
||||||
|
mrsrr1 r5
|
||||||
|
lwz r4, EWA.r4(r1)
|
||||||
|
lwz r5, EWA.r5(r1)
|
||||||
|
|
||||||
|
mfcr r0
|
||||||
|
; Interpret OpenPic result:
|
||||||
|
rlwinm. r2, r3, 0, 11, 11 ; bit 11 -> 7
|
||||||
|
li r2, 7
|
||||||
|
bne @gotnum
|
||||||
|
|
||||||
|
rlwinm r2, r3, 0, 15, 16 ; bit 15-16/21/31 -> 4
|
||||||
|
rlwimi. r2, r3, 0, 21, 31
|
||||||
|
li r2, 4
|
||||||
|
bne @gotnum
|
||||||
|
|
||||||
|
rlwinm. r2, r3, 0, 18, 18 ; bit 18 -> 3
|
||||||
|
li r2, 3
|
||||||
|
bne @gotnum
|
||||||
|
|
||||||
|
andis. r2, r3, 0x7FEA ; bit 1-10/12/14/19-20 -> 2
|
||||||
|
rlwimi. r2, r3, 0, 19, 20
|
||||||
|
li r2, 2
|
||||||
|
bne @gotnum
|
||||||
|
|
||||||
|
extrwi. r2, r3, 1, 13 ; bit 13 -> 1
|
||||||
|
; else -> 0
|
||||||
|
|
||||||
|
@gotnum
|
||||||
|
lwz r3, KDP.PA_EmulatorIplValue(r1)
|
||||||
|
sth r2, 0(r3)
|
||||||
|
mfsprg r2, 2
|
||||||
|
lwz r3, EWA.r3(r1)
|
||||||
|
mtlr r2
|
||||||
|
beq @clear ; 0 -> clear interrupt
|
||||||
|
; nonzero -> post interrupt
|
||||||
|
|
||||||
|
lwz r2, KDP.PostIntMaskInit(r1) ; Post an interrupt via Cond Reg
|
||||||
|
or r0, r0, r2
|
||||||
|
|
||||||
|
@return
|
||||||
|
mtcr r0 ; Set CR and return
|
||||||
|
lwz r0, EWA.r0(r1)
|
||||||
|
lwz r2, EWA.r2(r1)
|
||||||
|
mfsprg r1, 1
|
||||||
|
rfi
|
||||||
|
|
||||||
|
@clear
|
||||||
|
lwz r2, KDP.ClearIntMaskInit(r1) ; Clear an interrupt via Cond Reg
|
||||||
|
and r0, r0, r2
|
||||||
|
b @return
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
|
|
||||||
; Increment the Sys/Alt CPU clocks, and the Dec-int counter
|
; Increment the Sys/Alt CPU clocks, and the Dec-int counter
|
||||||
|
@ -57,13 +57,13 @@ rAlt set r8
|
|||||||
lbz r22, NKConfigurationInfo.InterruptHandlerKind(rCI)
|
lbz r22, NKConfigurationInfo.InterruptHandlerKind(rCI)
|
||||||
|
|
||||||
cmpwi r22, 0
|
cmpwi r22, 0
|
||||||
_kaddr r23, rNK, IntForEmulator_1
|
_kaddr r23, rNK, IntExternal0
|
||||||
beq @chosenIntHandler
|
beq @chosenIntHandler
|
||||||
cmpwi r22, 1
|
cmpwi r22, 1
|
||||||
_kaddr r23, rNK, IntForEmulator_2
|
_kaddr r23, rNK, IntExternal1
|
||||||
beq @chosenIntHandler
|
beq @chosenIntHandler
|
||||||
cmpwi r22, 2
|
cmpwi r22, 2
|
||||||
_kaddr r23, rNK, IntForEmulator_3
|
_kaddr r23, rNK, IntExternal2
|
||||||
beq @chosenIntHandler
|
beq @chosenIntHandler
|
||||||
|
|
||||||
@chosenIntHandler
|
@chosenIntHandler
|
||||||
|
159
NanoKernel/NKSystemCrash.s
Executable file
159
NanoKernel/NKSystemCrash.s
Executable file
@ -0,0 +1,159 @@
|
|||||||
|
SystemCrash
|
||||||
|
mfsprg0 r1
|
||||||
|
stw r0, KDP.ThudSavedR0(r1)
|
||||||
|
|
||||||
|
mfspr r0, sprg1
|
||||||
|
stw r0, KDP.ThudSavedR1(r1)
|
||||||
|
|
||||||
|
stmw r2, KDP.ThudSavedR2(r1)
|
||||||
|
|
||||||
|
mfspr r0, cr
|
||||||
|
stw r0, KDP.ThudSavedCR(r1)
|
||||||
|
|
||||||
|
mfspr r0, mq
|
||||||
|
stw r0, KDP.ThudSavedMQ(r1)
|
||||||
|
|
||||||
|
mfspr r0, xer
|
||||||
|
stw r0, KDP.ThudSavedXER(r1)
|
||||||
|
|
||||||
|
mfspr r0, sprg2
|
||||||
|
stw r0, KDP.ThudSavedSPRG2(r1)
|
||||||
|
|
||||||
|
mfspr r0, ctr
|
||||||
|
stw r0, KDP.ThudSavedCTR(r1)
|
||||||
|
|
||||||
|
mfspr r0, pvr
|
||||||
|
stw r0, KDP.ThudSavedPVR(r1)
|
||||||
|
|
||||||
|
mfspr r0, dsisr
|
||||||
|
stw r0, KDP.ThudSavedDSISR(r1)
|
||||||
|
mfspr r0, dar
|
||||||
|
stw r0, KDP.ThudSavedDAR(r1)
|
||||||
|
|
||||||
|
mfspr r0, tbu
|
||||||
|
stw r0, KDP.ThudSavedTBU(r1)
|
||||||
|
|
||||||
|
mfspr r0, tb
|
||||||
|
stw r0, KDP.ThudSavedTB(r1)
|
||||||
|
|
||||||
|
mfspr r0, dec
|
||||||
|
stw r0, KDP.ThudSavedDEC(r1)
|
||||||
|
|
||||||
|
mfspr r0, hid0
|
||||||
|
stw r0, KDP.ThudSavedHID0(r1)
|
||||||
|
|
||||||
|
mfspr r0, sdr1
|
||||||
|
stw r0, KDP.ThudSavedSDR(r1)
|
||||||
|
|
||||||
|
mfspr r0, srr0
|
||||||
|
stw r0, KDP.ThudSavedSRR0(r1)
|
||||||
|
mfspr r0, srr1
|
||||||
|
stw r0, KDP.ThudSavedSRR(r1)
|
||||||
|
mfspr r0, msr
|
||||||
|
stw r0, KDP.ThudSavedMSR(r1)
|
||||||
|
|
||||||
|
mfsr r0, 0
|
||||||
|
stw r0, KDP.ThudSavedSR0(r1)
|
||||||
|
mfsr r0, 1
|
||||||
|
stw r0, KDP.ThudSavedSR1(r1)
|
||||||
|
mfsr r0, 2
|
||||||
|
stw r0, KDP.ThudSavedSR2(r1)
|
||||||
|
mfsr r0, 3
|
||||||
|
stw r0, KDP.ThudSavedSR3(r1)
|
||||||
|
mfsr r0, 4
|
||||||
|
stw r0, KDP.ThudSavedSR4(r1)
|
||||||
|
mfsr r0, 5
|
||||||
|
stw r0, KDP.ThudSavedSR5(r1)
|
||||||
|
mfsr r0, 6
|
||||||
|
stw r0, KDP.ThudSavedSR6(r1)
|
||||||
|
mfsr r0, 7
|
||||||
|
stw r0, KDP.ThudSavedSR7(r1)
|
||||||
|
mfsr r0, 8
|
||||||
|
stw r0, KDP.ThudSavedSR8(r1)
|
||||||
|
mfsr r0, 9
|
||||||
|
stw r0, KDP.ThudSavedSR9(r1)
|
||||||
|
mfsr r0, 10
|
||||||
|
stw r0, KDP.ThudSavedSR10(r1)
|
||||||
|
mfsr r0, 11
|
||||||
|
stw r0, KDP.ThudSavedSR11(r1)
|
||||||
|
mfsr r0, 12
|
||||||
|
stw r0, KDP.ThudSavedSR12(r1)
|
||||||
|
mfsr r0, 13
|
||||||
|
stw r0, KDP.ThudSavedSR13(r1)
|
||||||
|
mfsr r0, 14
|
||||||
|
stw r0, KDP.ThudSavedSR14(r1)
|
||||||
|
mfsr r0, 15
|
||||||
|
stw r0, KDP.ThudSavedSR15(r1)
|
||||||
|
|
||||||
|
mfspr r0, msr
|
||||||
|
ori r0, r0, 0x2000
|
||||||
|
mtmsr r0
|
||||||
|
stfd f0, KDP.ThudSavedF0(r1)
|
||||||
|
stfd f1, KDP.ThudSavedF1(r1)
|
||||||
|
stfd f2, KDP.ThudSavedF2(r1)
|
||||||
|
stfd f3, KDP.ThudSavedF3(r1)
|
||||||
|
stfd f4, KDP.ThudSavedF4(r1)
|
||||||
|
stfd f5, KDP.ThudSavedF5(r1)
|
||||||
|
stfd f6, KDP.ThudSavedF6(r1)
|
||||||
|
stfd f7, KDP.ThudSavedF7(r1)
|
||||||
|
stfd f8, KDP.ThudSavedF8(r1)
|
||||||
|
stfd f9, KDP.ThudSavedF9(r1)
|
||||||
|
stfd f10, KDP.ThudSavedF10(r1)
|
||||||
|
stfd f11, KDP.ThudSavedF11(r1)
|
||||||
|
stfd f12, KDP.ThudSavedF12(r1)
|
||||||
|
stfd f13, KDP.ThudSavedF13(r1)
|
||||||
|
stfd f14, KDP.ThudSavedF14(r1)
|
||||||
|
stfd f15, KDP.ThudSavedF15(r1)
|
||||||
|
stfd f16, KDP.ThudSavedF16(r1)
|
||||||
|
stfd f17, KDP.ThudSavedF17(r1)
|
||||||
|
stfd f18, KDP.ThudSavedF18(r1)
|
||||||
|
stfd f19, KDP.ThudSavedF19(r1)
|
||||||
|
stfd f20, KDP.ThudSavedF20(r1)
|
||||||
|
stfd f21, KDP.ThudSavedF21(r1)
|
||||||
|
stfd f22, KDP.ThudSavedF22(r1)
|
||||||
|
stfd f23, KDP.ThudSavedF23(r1)
|
||||||
|
stfd f24, KDP.ThudSavedF24(r1)
|
||||||
|
stfd f25, KDP.ThudSavedF25(r1)
|
||||||
|
stfd f26, KDP.ThudSavedF26(r1)
|
||||||
|
stfd f27, KDP.ThudSavedF27(r1)
|
||||||
|
stfd f28, KDP.ThudSavedF28(r1)
|
||||||
|
stfd f29, KDP.ThudSavedF29(r1)
|
||||||
|
stfd f30, KDP.ThudSavedF30(r1)
|
||||||
|
stfd f31, KDP.ThudSavedF31(r1)
|
||||||
|
mffs f31
|
||||||
|
lwz r0, KDP.ThudSavedF31+4(r1)
|
||||||
|
stfd f31, KDP.ThudSavedF31+4(r1)
|
||||||
|
stw r0, KDP.ThudSavedF31+4(r1)
|
||||||
|
|
||||||
|
mfspr r0, lr
|
||||||
|
stw r0, KDP.ThudSavedLR(r1)
|
||||||
|
|
||||||
|
########################################################################
|
||||||
|
|
||||||
|
lis r2, 2 ; Count down from 64k to find a zero
|
||||||
|
@nonzero
|
||||||
|
lwzu r0, -4(r2)
|
||||||
|
mr. r2, r2
|
||||||
|
bne @nonzero
|
||||||
|
|
||||||
|
@retryrtc ; Save RTC in "Mac/Smurf shared message mem"
|
||||||
|
mfrtcu r2
|
||||||
|
mfrtcl r3
|
||||||
|
mfrtcu r0
|
||||||
|
xor. r0, r0, r2
|
||||||
|
bne @retryrtc
|
||||||
|
lwz r1, KDP.SharedMemoryAddr(r1)
|
||||||
|
stw r2, 0(r1)
|
||||||
|
ori r3, r3, 1
|
||||||
|
stw r3, 4(r1)
|
||||||
|
|
||||||
|
dcbf 0, r1
|
||||||
|
sync
|
||||||
|
|
||||||
|
@loopforever
|
||||||
|
lwz r1, 0(0)
|
||||||
|
addi r1, r1, 1
|
||||||
|
stw r1, 0(0)
|
||||||
|
li r1, 0
|
||||||
|
dcbst r1, r1
|
||||||
|
b @loopforever
|
@ -20,34 +20,8 @@ MemRetryDSI
|
|||||||
MemRetryMachineCheck
|
MemRetryMachineCheck
|
||||||
|
|
||||||
NKTop
|
NKTop
|
||||||
b VMPanic
|
include 'NKInit.s'
|
||||||
|
include 'NKSystemCrash.s'
|
||||||
|
|
||||||
|
|
||||||
org 0x0
|
|
||||||
Entry
|
|
||||||
org 0xA4
|
|
||||||
bankLoop
|
|
||||||
org 0xC8
|
|
||||||
FloatTables
|
|
||||||
org 0x308
|
|
||||||
ProcessorInfoTbl
|
|
||||||
org 0x374
|
|
||||||
FiguredOutProcessor
|
|
||||||
org 0x468
|
|
||||||
Thud
|
|
||||||
Panic
|
|
||||||
VMPanic
|
|
||||||
org 0x680
|
|
||||||
IntForEmulator_1
|
|
||||||
org 0x740
|
|
||||||
PDM68kInterruptTable
|
|
||||||
org 0x780
|
|
||||||
IntForEmulator_2
|
|
||||||
org 0x840
|
|
||||||
IntForEmulator_3
|
|
||||||
org 0x940
|
|
||||||
|
|
||||||
include 'NKIntHandlers.s'
|
include 'NKIntHandlers.s'
|
||||||
include 'NKMemory.s'
|
include 'NKMemory.s'
|
||||||
include 'NKExceptions.s'
|
include 'NKExceptions.s'
|
||||||
|
Loading…
Reference in New Issue
Block a user