mirror of
https://github.com/hsoft/collapseos.git
synced 2024-11-15 04:58:05 +11:00
7cf3ed38da
Most of register fiddling routines (which is now the only thing contained in care.asm) are used by almost all userspace apps, often in inner loops. That makes the penalty of using jump tables for those a bit too high. Moreover, it burdens jump tables needlessly. Because this unit is very small (now that string routines are out), it makes sense to always include it in binaries.
44 lines
675 B
NASM
44 lines
675 B
NASM
; *** Requirements ***
|
|
; BLOCKDEV_SIZE
|
|
; FS_HANDLE_SIZE
|
|
; _blkGetB
|
|
; _blkPutB
|
|
; _blkSeek
|
|
; _blkTell
|
|
; fsFindFN
|
|
; fsOpen
|
|
; fsGetB
|
|
; fsPutB
|
|
; fsSetSize
|
|
; printstr
|
|
; printcrlf
|
|
; stdioReadLine
|
|
; stdioPutC
|
|
;
|
|
.inc "user.h"
|
|
|
|
; *** Overridable consts ***
|
|
; Maximum number of lines allowed in the buffer.
|
|
.equ ED_BUF_MAXLINES 0x800
|
|
; Size of our scratchpad
|
|
.equ ED_BUF_PADMAXLEN 0x1000
|
|
|
|
; ******
|
|
|
|
.inc "err.h"
|
|
.org USER_CODE
|
|
|
|
jp edMain
|
|
|
|
.inc "core.asm"
|
|
.inc "lib/util.asm"
|
|
.inc "lib/parse.asm"
|
|
.equ IO_RAMSTART USER_RAMSTART
|
|
.inc "ed/io.asm"
|
|
.equ BUF_RAMSTART IO_RAMEND
|
|
.inc "ed/buf.asm"
|
|
.equ CMD_RAMSTART BUF_RAMEND
|
|
.inc "ed/cmd.asm"
|
|
.equ ED_RAMSTART CMD_RAMEND
|
|
.inc "ed/main.asm"
|