CROSS_CCOPTS += -I../dev/
-JUNK = $(CSRCS:.c=.lst) $(CSRCS:.c=.asm) $(CSRCS:.c=.sym) $(ASRCS:.s=.lst) $(ASRCS:.s=.sym) $(CSRCS:.c=.rst) $(ASRCS:.s=.rst)
-
all: $(OBJS)
$(COBJS): %.rel: %.c
$(CROSS_CC) $(CROSS_CCOPTS) $(CROSS_CC_SEGDISC) -c $<
clean:
- rm -f $(OBJS) $(JUNK) core *~ *.asm *.rst *.lst *.sym
+ rm -f $(OBJS) core *~ *.asm *.rst *.lst *.sym
image:
sdasz80 -o nasboot.s
#define SWAPDEV (swap_dev) /* Device for swapping (dynamic). */
#define NBUFS 10 /* Number of block buffers - keep in sync with asm! */
#define NMOUNTS 4 /* Number of mounts at a time */
+
+/* Do I/O direct to user space */
+#define CONFIG_LARGE_IO_DIRECT
/* Reclaim the discard space for buffers */
#define CONFIG_DYNAMIC_BUFPOOL
}
}
-void tty_setup(uint8_t minor)
+void tty_setup(uint8_t minor, uint8_t flags)
{
/* The console is a crt/keyboard, the 6402 is set by jumpers */
}
; exported symbols
.globl init_hardware
.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
; imported symbols
; of unbanked memory.
;
map_kernel:
+map_kernel_di:
push af
ld a,#0x11
ld (pagereg),a
; selects how the upper bank decodes
;
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,(pagereg)
ld (pagesave), a
+ ld a,#0x11
+ ld (pagereg),a
+ out (0xFF), a
pop af
ret
.globl _program_vectors
.globl platform_interrupt_all
.globl _nmikey
+ .globl _int_disabled
; exported debugging tools
.globl _platform_monitor
.globl map_process
.globl map_process_a
.globl map_process_always
- .globl map_save
+ .globl map_save_kernel
.globl map_restore
.globl s__COMMONMEM
_platform_monitor:
_platform_reboot:
- di
- jr _platform_reboot
+ di
+ jr _platform_reboot
+
+_int_disabled:
+ .db 1
; -----------------------------------------------------------------------------
; KERNEL MEMORY BANK (below 0xE800, only accessible when the kernel is mapped)