attach shipdisk to the build
This commit is contained in:
parent
47af93dcbc
commit
23e408f6bd
|
|
@ -0,0 +1,170 @@
|
||||||
|
!******************************************************************************
|
||||||
|
*******************************************************************************
|
||||||
|
|
||||||
|
W E G A - Quelle (C) ZFT/KEAW Abt. Basissoftware - 1985
|
||||||
|
|
||||||
|
Standalone Modul sa.function.s
|
||||||
|
|
||||||
|
|
||||||
|
Bearbeiter: P. Hoge
|
||||||
|
Datum: 04/01/87 11:20:56
|
||||||
|
Version: 1.1
|
||||||
|
|
||||||
|
*******************************************************************************
|
||||||
|
|
||||||
|
Dieser Modul gestattet die Benutzung der Boot Systemfunktionen
|
||||||
|
von einem User Programm aus. Dieser Modul wird zusammen mit
|
||||||
|
dem Modul misc.c zur libb.a
|
||||||
|
|
||||||
|
*******************************************************************************
|
||||||
|
******************************************************************************!
|
||||||
|
|
||||||
|
|
||||||
|
sa_function_s module
|
||||||
|
|
||||||
|
$nonsegmented
|
||||||
|
|
||||||
|
|
||||||
|
external
|
||||||
|
|
||||||
|
_printfv procedure
|
||||||
|
|
||||||
|
global
|
||||||
|
|
||||||
|
_printf procedure
|
||||||
|
entry
|
||||||
|
ex r2, @r15
|
||||||
|
push @r15, r3
|
||||||
|
push @r15, r4
|
||||||
|
push @r15, r5
|
||||||
|
push @r15, r6
|
||||||
|
ld r6, r15
|
||||||
|
push @r15, r2
|
||||||
|
call _printfv
|
||||||
|
ld r2, @r15
|
||||||
|
inc r15, #12
|
||||||
|
jp @r2
|
||||||
|
end _printf
|
||||||
|
|
||||||
|
_exit procedure
|
||||||
|
entry
|
||||||
|
ldb rl1, #0
|
||||||
|
jr system
|
||||||
|
end _exit
|
||||||
|
|
||||||
|
_read procedure !read nach Segment 0!
|
||||||
|
entry
|
||||||
|
ldb rl1, #1
|
||||||
|
jr system
|
||||||
|
end _read
|
||||||
|
|
||||||
|
_write procedure !von Segment 0!
|
||||||
|
entry
|
||||||
|
ldb rl1, #2
|
||||||
|
jr system
|
||||||
|
end _write
|
||||||
|
|
||||||
|
_open procedure
|
||||||
|
entry
|
||||||
|
ldb rl1, #3
|
||||||
|
jr system
|
||||||
|
end _open
|
||||||
|
|
||||||
|
_close procedure
|
||||||
|
entry
|
||||||
|
ldb rl1, #4
|
||||||
|
jr system
|
||||||
|
end _close
|
||||||
|
|
||||||
|
_lseek procedure
|
||||||
|
entry
|
||||||
|
ldb rl1, #5
|
||||||
|
jr system
|
||||||
|
end _lseek
|
||||||
|
|
||||||
|
_loadit procedure
|
||||||
|
entry
|
||||||
|
ldb rl1, #6
|
||||||
|
jr system
|
||||||
|
end _loadit
|
||||||
|
|
||||||
|
_getchar procedure
|
||||||
|
entry
|
||||||
|
ldb rl1, #7
|
||||||
|
jr system
|
||||||
|
end _getchar
|
||||||
|
|
||||||
|
_putchar procedure
|
||||||
|
entry
|
||||||
|
ldb rl1, #8
|
||||||
|
jr system
|
||||||
|
end _putchar
|
||||||
|
|
||||||
|
_getc procedure
|
||||||
|
entry
|
||||||
|
ldb rl1, #9
|
||||||
|
jr system
|
||||||
|
end _getc
|
||||||
|
|
||||||
|
_getw procedure
|
||||||
|
entry
|
||||||
|
ldb rl1, #10
|
||||||
|
end _getw
|
||||||
|
|
||||||
|
internal
|
||||||
|
|
||||||
|
system procedure
|
||||||
|
entry
|
||||||
|
ld r0, #%C000
|
||||||
|
ldctl FCW, r0
|
||||||
|
!$segmented!
|
||||||
|
wval %5F00 !call <3F>%8002!
|
||||||
|
wval %BF00
|
||||||
|
wval %8002
|
||||||
|
ld r0, #%5800
|
||||||
|
ldctl FCW, r0
|
||||||
|
!nonsegmented!
|
||||||
|
ret
|
||||||
|
end system
|
||||||
|
|
||||||
|
|
||||||
|
!*--------------------------------------------------------*!
|
||||||
|
!*
|
||||||
|
* Realisierung von in und out Befehlen fuer C
|
||||||
|
*!
|
||||||
|
!*--------------------------------------------------------*!
|
||||||
|
|
||||||
|
global
|
||||||
|
|
||||||
|
_otirb !@r7, @r6, r5! procedure
|
||||||
|
entry
|
||||||
|
otirb @r7, @r6, r5
|
||||||
|
ret
|
||||||
|
end _otirb
|
||||||
|
|
||||||
|
_outb !@r7, rl6! procedure
|
||||||
|
entry
|
||||||
|
outb @r7, rl6
|
||||||
|
ret
|
||||||
|
end _outb
|
||||||
|
|
||||||
|
_inb !rl2, @r7! procedure
|
||||||
|
entry
|
||||||
|
inb rl2, @r7
|
||||||
|
xorb rh2, rh2
|
||||||
|
ret
|
||||||
|
end _inb
|
||||||
|
|
||||||
|
_out !@r7, r6! procedure
|
||||||
|
entry
|
||||||
|
out @r7, r6
|
||||||
|
ret
|
||||||
|
end _out
|
||||||
|
|
||||||
|
_in !r2, @r7! procedure
|
||||||
|
entry
|
||||||
|
in r2, @r7
|
||||||
|
ret
|
||||||
|
end _in
|
||||||
|
|
||||||
|
end sa_function_s
|
||||||
Loading…
Reference in New Issue