From: Alan Cox Date: Sun, 13 May 2018 17:34:56 +0000 (+0100) Subject: ubee: floppy support for direct to user copies X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=d7e9c2126dab9b90ff9263122eb0cdb445040659;p=FUZIX.git ubee: floppy support for direct to user copies --- diff --git a/Kernel/platform-ubee/README b/Kernel/platform-ubee/README index b1c665f5..6e0ab290 100644 --- a/Kernel/platform-ubee/README +++ b/Kernel/platform-ubee/README @@ -104,9 +104,9 @@ Done so far: - Non premium video setup COLOUR DONE - Support RAM font setting DONE - Figure out how I broke the 6545 cursor DONE +- Debugging floppy driver - need to add direct I/O to user support DONE In Progress -- Debugging floppy driver - we seem to have broken it - Swap - Graphics not just vt interfaces - RAM based fonts diff --git a/Kernel/platform-ubee/floppy.s b/Kernel/platform-ubee/floppy.s index c4e209dc..2233c5b1 100644 --- a/Kernel/platform-ubee/floppy.s +++ b/Kernel/platform-ubee/floppy.s @@ -12,6 +12,9 @@ .globl _fd_motor_on .globl fd_nmi_handler + .globl map_kernel + .globl map_process_always + FDCREG .equ 0x40 FDCTRK .equ 0x41 FDCSEC .equ 0x42 @@ -39,6 +42,7 @@ TRACK .equ 1 SECTOR .equ 2 DIRECT .equ 3 ; 0 = read 2 = write 1 = status DATA .equ 4 +USER .equ 6 .area _COMMONMEM ; @@ -178,6 +182,10 @@ fdiosetup: ld a, (fdcctrl) ld d, a ; we need this in a register ; to meet timing + ld a, USER(ix) + or a + call nz, map_process_always + ld a, #1 ld (fdc_active), a ; NMI pop and jump jr z, fdio_in @@ -190,6 +198,7 @@ fdiosetup: ; fdxferdone: ei + call map_kernel fdxferdone2: xor a ld (fdc_active), a