This platform uses the banked build so at the moment this can't be built
or tested
;
; FIXME: this probably needs to be a new "commondata" area so we can
+; ROM this correctly
;
-_kernel_flag:
- .db 1
+_need_resched:
+ .db 0
kernel_map: ; Last kernel map we were using
.db 0xA2
saved_map: ; Saved mapping for IRQ entry/exit
push iy
ld (U_DATA__U_SP), sp ; this is where the SP is restored in _switchin
- ; set inint to false
- xor a
- ld (_inint), a
-
; find another process to run (may select this one again)
push af
call _getproc
pop hl ; return code
; enable interrupts, if the ISR isn't already running
- ld a, (_inint)
+ ld a, (U_DATA__U_ININTERRUPT)
or a
- ret z ; in ISR, leave interrupts off
+ ret nz ; in ISR, leave interrupts off
ei
ret ; return with interrupts on