.globl interrupt_handler
.globl _program_vectors
.globl map_kernel
+ .globl map_kernel_di
.globl map_process
+ .globl map_process_di
.globl map_process_a
.globl map_process_always
- .globl map_save
+ .globl map_process_always_di
+ .globl map_save_kernel
.globl map_restore
.globl map_for_swap
.globl platform_interrupt_all
.globl _kernel_flag
+ .globl _int_disabled
; exported debugging tools
.globl _platform_monitor
;
.area _COMMONMEM
+_int_disabled:
+ .db 1
+
platform_interrupt_all:
in a,(0xef) ; FIXME: remove this line once debugged
ret
; The lower 32K is switched between the various user banks.
;
map_kernel:
+map_kernel_di:
push af
ld a, #0x0C ; bank 0, 1 no ROM or video
ld (mapreg), a
pop af
ret
map_process:
+map_process_di:
ld a, h
or l
jr z, map_kernel
ret
map_process_always:
+map_process_always_di:
push af
push hl
ld hl, #U_DATA__U_PAGE
pop af
ret
-map_save: push af
+map_save_kernel:
+ push af
ld a, (mapreg)
ld (mapsave), a
+ ld a, #0x0C ; bank 0, 1 no ROM or video
+ ld (mapreg), a
+ out (0x50), a
pop af
ret