Snippets
Created by
ScorpionIlluminati
last modified
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 | RegisterA0String:
dc.b "A0: ",0
RegisterA1String:
dc.b "A1: ",0
RegisterA2String:
dc.b "A2: ",0
RegisterA3String:
dc.b "A3: ",0
RegisterA4String:
dc.b "A4: ",0
RegisterA5String:
dc.b "A5: ",0
RegisterA6String:
dc.b "A6: ",0
RegisterA7String:
dc.b "A7: ",0
RegisterD0String:
dc.b "D0: ",0
RegisterD1String:
dc.b "D1: ",0
RegisterD2String:
dc.b "D2: ",0
RegisterD3String:
dc.b "D3: ",0
RegisterD4String:
dc.b "D4: ",0
RegisterD5String:
dc.b "D5: ",0
RegisterD6String:
dc.b "D6: ",0
RegisterD7String:
dc.b "D7: ",0
BusErrorString:
dc.b "Bus Error",0
AddressErrorString:
dc.b "Address Error",0
IllegalInstructionString:
dc.b "Illegal Instruction",0
ZeroDivideString:
dc.b "Zero Divide",0
CHKInstructionString:
dc.b "CHK Instruction",0
TRAPVInstructionString:
dc.b "TRAPV Instruction",0
PrivilegeViolationString:
dc.b "Privilege Violation",0
TraceString:
dc.b "Trace",0
LineAEmulatorString:
dc.b "Line-A Emulator",0
LineFEmulatorString:
dc.b "Line-F Emulator",0
Trap00ExceptionString:
dc.b "Trap 00 Exception",0
Trap01ExceptionString:
dc.b "Trap 01 Exception",0
Trap02ExceptionString:
dc.b "Trap 02 Exception",0
Trap03ExceptionString:
dc.b "Trap 03 Exception",0
Trap04ExceptionString:
dc.b "Trap 04 Exception",0
Trap05ExceptionString:
dc.b "Trap 05 Exception",0
Trap06ExceptionString:
dc.b "Trap 06 Exception",0
Trap07ExceptionString:
dc.b "Trap 07 Exception",0
Trap08ExceptionString:
dc.b "Trap 08 Exception",0
Trap09ExceptionString:
dc.b "Trap 09 Exception",0
Trap10ExceptionString:
dc.b "Trap 10 Exception",0
Trap11ExceptionString:
dc.b "Trap 11 Exception",0
Trap12ExceptionString:
dc.b "Trap 12 Exception",0
Trap13ExceptionString:
dc.b "Trap 13 Exception",0
Trap14ExceptionString:
dc.b "Trap 14 Exception",0
Trap15ExceptionString:
dc.b "Trap 15 Exception",0
even
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 | ;==============================================================
; BIG EVIL CORPORATION .co.uk
;==============================================================
; SEGA Genesis Framework (c) Matt Phillips 2014
;==============================================================
; interpts.asm - Interrupts and exceptions
;==============================================================
HBlankInterrupt:
addi.l #0x1, hblank_counter ; Increment hinterrupt counter
rte
VBlankInterrupt:
; Backup registers
movem.l d0-a7,-(sp)
; Cache Joypad inputs
jsr ReadPadA
jsr ReadPadB
addi.l #0x1, vblank_counter ; Increment vinterrupt counter
TRAP #0 ; Sync with debugger - NOT FOR RELEASE
; Restore registers
movem.l (sp)+,d0-a7
rte
Exception:
TRAP #0 ; Sync with debugger - NOT FOR RELEASE
stop #$2700 ; Halt CPU
TRAP #0 ; Sync with debugger - NOT FOR RELEASE
jmp Exception
rte
BusErrorException:
move.w 2(sp), (backup_pc) ; save pc state
move.l BusErrorString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
AddressErrorException:
move.w 8(sp), (backup_pc) ; save pc state
move.l AddressErrorString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
IllegalInstructionException:
move.w 2(sp), (backup_pc) ; save pc state
move.l IllegalInstructionString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
ZeroDivideException:
move.w 2(sp), (backup_pc) ; save pc state
move.l ZeroDivideString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
CHKInstructionException:
move.w 2(sp), (backup_pc) ; save pc state
move.l CHKInstructionString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
TRAPVInstructionException:
move.w 2(sp), (backup_pc) ; save pc state
move.l TRAPVInstructionString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
PrivilegeViolationException:
move.w 2(sp), (backup_pc) ; save pc state
move.l PrivilegeViolationString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
TRACEException:
move.w 2(sp), (backup_pc) ; save pc state
move.l TRACEString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
LineAEmulator:
move.w 2(sp), (backup_pc) ; save pc state
move.l LineAEmulatorString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
LineFEmulator:
move.w 2(sp), (backup_pc) ; save pc state
move.l LineFEmulatorString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
TRAP00Exception:
move.w 2(sp), (backup_pc) ; save pc state
move.l TRAP00ExceptionString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
TRAP01Exception:
move.w 2(sp), (backup_pc) ; save pc state
move.l TRAP01ExceptionString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
TRAP02Exception:
move.w 2(sp), (backup_pc) ; save pc state
move.l TRAP02ExceptionString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
TRAP03Exception:
move.w 2(sp), (backup_pc) ; save pc state
move.l TRAP03ExceptionString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
TRAP04Exception:
move.w 2(sp), (backup_pc) ; save pc state
move.l TRAP04ExceptionString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
TRAP05Exception:
move.w 2(sp), (backup_pc) ; save pc state
move.l TRAP05ExceptionString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
TRAP06Exception:
move.w 2(sp), (backup_pc) ; save pc state
move.l TRAP06ExceptionString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
TRAP07Exception:
move.w 2(sp), (backup_pc) ; save pc state
move.l TRAP07ExceptionString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
TRAP08Exception:
move.w 2(sp), (backup_pc) ; save pc state
move.l TRAP08ExceptionString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
TRAP09Exception:
move.w 2(sp), (backup_pc) ; save pc state
move.l TRAP09ExceptionString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
TRAP10Exception:
move.w 2(sp), (backup_pc) ; save pc state
move.l TRAP10ExceptionString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
TRAP11Exception:
move.w 2(sp), (backup_pc) ; save pc state
move.l TRAP11ExceptionString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
TRAP12Exception:
move.w 2(sp), (backup_pc) ; save pc state
move.l TRAP12ExceptionString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
TRAP13Exception:
move.w 2(sp), (backup_pc) ; save pc state
move.l TRAP13ExceptionString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
TRAP14Exception:
move.w 2(sp), (backup_pc) ; save pc state
move.l TRAP14ExceptionString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
TRAP15Exception:
move.w 2(sp), (backup_pc) ; save pc state
move.l TRAP15ExceptionString, (error_code) ; store error code in ram
jmp CrashHandler_Init ; jump to crash handler
stop #$2700 ; Halt CPU
rte
NullInterrupt:
rte
|
Comments (0)
You can clone a snippet to your computer for local editing. Learn more.