Imported slu/mmu/interrupt/register code from WIP memtester program into C template.
[pdp11-modern-c] / pdp11 / interrupt_handler.s
# (c) 2020 Aaron Taylor <ataylor at subgeniuskitty dot com>
# See License.txt file for copyright and license details.
.globl _int4_asm_handler
.globl _int4_c_handler
_int4_asm_handler:
# GCC appears to be using the same calling convention documented in the
# original UNIX manuals. Most of these register saves are probably
# unnecessary.
mov r0,-(sp)
mov r1,-(sp)
mov r2,-(sp)
mov r3,-(sp)
mov r4,-(sp)
mov r5,-(sp)
jsr pc, _int4_c_handler
mov (sp)+,r5
mov (sp)+,r4
mov (sp)+,r3
mov (sp)+,r2
mov (sp)+,r1
mov (sp)+,r0
rti