From: Alan Cox Date: Sat, 15 Sep 2018 23:22:10 +0000 (+0100) Subject: z80: allow for the HIGH block to be in different places X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=d7c48e943a5dc62defb05ffdef7cb4c642432c17;p=FUZIX.git z80: allow for the HIGH block to be in different places For commonless machines we need it in COMMONMEM --- diff --git a/Kernel/lowlevel-z80-thunked.s b/Kernel/lowlevel-z80-thunked.s index 4e23ce1a..b101005d 100644 --- a/Kernel/lowlevel-z80-thunked.s +++ b/Kernel/lowlevel-z80-thunked.s @@ -66,7 +66,7 @@ CPU_CMOS_Z80 .equ Z80_TYPE-0 CPU_NMOS_Z80 .equ Z80_TYPE-1 - .area _HIGH + HIGH ; ; Execve also needs a platform helper for 32/32K ; @@ -193,14 +193,12 @@ traphl: call outstring call _platform_monitor - .area _HIGH + HIGH ; ; The stub caller has already saved AF DE HL, mapped the kernel high ; and switched to the istack as well as saving the old sp in ; istack_switched_sp ; -; FIXME: pure syscall path -; interrupt_handler: call map_save_low ; save old and map kernel ex af,af' @@ -306,6 +304,9 @@ intret2: ld hl, (U_DATA__U_PTAB) ld (hl), #P_READY ; Give up the CPU + ; FIXME: can we get here on timers when only one thing is running + ; and we don't need to pre-empt ????? Is this more generally busted + ; ? call _platform_switchout ; Undo the fakery xor a