#define CONFIG_INPUT
/* Full keycode level grabbing supported */
#define CONFIG_INPUT_GRABMAX 3
+/* External buffers (so we can balance things better) */
+#define CONFIG_BLKBUF_EXTERNAL
#define MAX_MAPS 16 /* 512K */
#define NUM_DEV_TTY 3
#define TTYDEV BOOT_TTY /* Device used by kernel for messages, panics */
#define SWAPDEV (swap_dev) /* Device for swapping (dynamic). */
-#define NBUFS 5 /* Number of block buffers - keep in sync with asm! */
-#define NMOUNTS 2 /* Number of mounts at a time */
-/* Reclaim the discard space for buffers */
-#define CONFIG_DYNAMIC_BUFPOOL
+#define NBUFS 10 /* Number of block buffers - keep in sync with asm! */
+#define NMOUNTS 3 /* Number of mounts at a time */
extern void platform_discard(void);
.globl s__COMMONMEM
.globl l__COMMONMEM
- .globl _bufpool
- .globl bufend
-
.globl _trs80_model
; hard disk helpers
.include "kernel.def"
.include "../kernel.def"
- .area _BUFFERS
-
-_bufpool:
- .ds BUFSIZE * NBUFS
-bufend:
; -----------------------------------------------------------------------------
; COMMON MEMORY BANK (0xE800 upwards)
; -----------------------------------------------------------------------------
ret
;
-; Swap helpers
+; Swap helpers.
+; We have our buffers mapepd in Bank 2 but we don't need to do
+; anything here as we are in common memory and we've carefully
+; arranged that the device driver callers are in BANK2 thus we'll
+; have BANK2 mapped by default, although we may map a user bank
+; in temporarily if going direct to user.
;
_hd_xfer_in:
pop de
call nz, map_kernel_restore
ret
+
+;
+; Storage for buffers. Must be banked with CODE2
+;
+ .area _DATA2
+ .globl _bufdata
+_bufdata:
+ .ds 512 * 10