new version for .o

This commit is contained in:
ceriel 1987-02-02 13:30:20 +00:00
parent 9cd6325ee1
commit 1ac26f9b67
44 changed files with 261 additions and 42 deletions

View file

@ -1,4 +1,4 @@
tail_em.a
libem_s.a
aaru.s
aar.s
aar2.s

View file

@ -1,17 +1,29 @@
# $Header$
install:
../../install tail_em.a tail_em
../../install tail.s end_em
MACH=z80
all: libem_o.a end.o
cmp:
-../../compare tail_em.a tail_em
-../../compare tail.s end_em
install: all
../../install end.o end_em
../../install libem_o.a tail_em
cmp: all
-../../compare end.o end_em
-../../compare libem_o.a tail_em
libem_o.a: libem_s.a
ASAR=aal ; export ASAR ;\
march . libem_o.a
end.o: end.s
$(MACH) -I../../../h -c end.s
clean:
rm -f *.o libem_o.a
opr :
make pr | opr
pr:
@arch pv tail_em.a | pr -h `pwd`/tail_em.a
@pr `pwd`/tail.s
@pr `pwd`/end.s
@arch pv libem_s.a | pr -h `pwd`/libem_s.a

View file

@ -1,4 +1,9 @@
.define .aar
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! use .mli2
! 2-byte descriptor elements

View file

@ -1,4 +1,9 @@
.define .aar2
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! special case aar: element size = 2 (statically known)
! parameters:

View file

@ -1,4 +1,9 @@
.define .aaru
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! AAR NOT DEFINED

View file

@ -1,4 +1,9 @@
.define .and
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! auxiliary size 'and'
! parameters:

View file

@ -1,4 +1,10 @@
.define .cii
.define .cuu
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! cii: convert integer to integer
! parameters:
@ -107,7 +113,6 @@
.define .cuu
! cuu: convert unsigned to unsigned
! parameters:

View file

@ -1,4 +1,9 @@
.define .cms
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! any size sets
! parameters:

View file

@ -1,4 +1,9 @@
.define .cmu
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! parameters:
! hl : size (#bytes)

View file

@ -1,4 +1,9 @@
.define .cmu4
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! 4 byte cmu and cmi routine
! parameters:
@ -56,5 +61,5 @@
inc hl
ld sp,hl
jp (ix)
.data
savesp: .word 0
.sect .data
savesp: .data2 0

View file

@ -1,4 +1,9 @@
.define .csa
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! this is not a subroutine, but just a
! piece of code that computes the jump-

View file

@ -1,4 +1,9 @@
.define .csb
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! this is not a subroutine, but just a
! piece of code that computes the jump-

View file

@ -1,4 +1,9 @@
.define .dvi2
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! 16-bit signed division
! parameters:

View file

@ -1,4 +1,9 @@
.define .dvi4
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! 4-byte divide routine for z80
! parameters:
@ -77,9 +82,9 @@
push bc
push de
jp (ix)
.data
.flag1: .byte 0
.flag2: .byte 0
retaddr:.word 0
.savebc: .word 0
.savede: .word 0
.sect .data
.flag1: .data1 0
.flag2: .data1 0
retaddr:.data2 0
.savebc: .data2 0
.savede: .data2 0

View file

@ -1,4 +1,9 @@
.define .dvu2
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! 16-bit divide
! parameters:

View file

@ -1,4 +1,9 @@
.define .dvu4
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! 4-byte divide routine for z80
! parameters:
@ -129,9 +134,9 @@
ld hl,(.retaddr)
jp (hl) ! return
.data
.flag: .byte 0
.low: .word 0
.iysave: .word 0
.retaddr: .word 0
.result: .word 0
.sect .data
.flag: .data1 0
.low: .data2 0
.iysave: .data2 0
.retaddr: .data2 0
.result: .data2 0

View file

@ -1,15 +1,17 @@
.sect .text; .sect .rom; .sect .data; .sect .bss
.define endtext,enddata,endbss
.define _end,_etext,_edata
.text
! $Header$
.sect .text
endtext:
_etext:
.align 2
.data
.sect .data
enddata:
_edata:
.align 2
.bss
.sect .endsect
_end:
endbss:
.align 2

View file

@ -1,4 +1,9 @@
.define .exg
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
.exg:
pop ix
pop de

View file

@ -1,4 +1,9 @@
.define .gto
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
.gto:
ld e,(hl)

View file

@ -1,3 +1,8 @@
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
loop = 100
dvi4:
xor a
@ -57,6 +62,6 @@ dvi4:
push hl
push de
jp (iy)
.data
.flag1: .byte 0
.flag2: .byte 0
.sect .data
.flag1: .data1 0
.flag2: .data1 0

View file

@ -1,4 +1,9 @@
.define .inn
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! use .unimpld
! any size sets

View file

@ -1,4 +1,9 @@
.define .ior
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! auxiliary size 'ior'
! parameters:

View file

@ -1,4 +1,9 @@
.define .lar
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! use .mli2
! 2-byte descriptor elements

View file

@ -1,4 +1,9 @@
.define .lar2
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! special case lar: element size = 2 (statically known)
! parameters:

View file

@ -1,4 +1,9 @@
.define .laru
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! LAR NOT DEFINED

View file

@ -1,4 +1,9 @@
.define .los
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text

View file

@ -1,4 +1,9 @@
.define .mli2
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! 16 bit multiply
! parameters:

View file

@ -1,4 +1,9 @@
.define .mli4
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! 32-bit multiply routine for z80
! parameters:
@ -70,6 +75,6 @@
! on stack! put return address in hl
push ix ! least sign. 2 bytes of result
jp (hl) ! return
.data
.flag: .byte 0
.sect .data
.flag: .data1 0
.mplier: .space 4

View file

@ -1,6 +1,11 @@
.define .nop
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! NOP
! changed into output routine to print linenumber

View file

@ -1,4 +1,9 @@
.define outdec
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! output contents of HL as a sequence
! of decimal digits
outdec:
@ -47,7 +52,7 @@ convert:
pop bc
ret
table:
.short 10000
.short 1000
.short 100
.short 10
.data2 10000
.data2 1000
.data2 100
.data2 10

View file

@ -1,6 +1,11 @@
.define pstrng
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! print a string of characters to the console
! entry: DE points to string
! string terminator is 0x00

View file

@ -1,4 +1,9 @@
.define .rck
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
.rck:
pop bc
pop ix

View file

@ -1,4 +1,9 @@
.define .rmi2
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! 16-bit signed remainder
! parameters:

View file

@ -1,4 +1,9 @@
.define .sar
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! use .mli2
! use .trp.z

View file

@ -1,4 +1,9 @@
.define .sar2
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! special case sar: element size = 2 (statically known)
! parameters:

View file

@ -1,4 +1,9 @@
.define .saru
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! SAR NOT DEFINED

View file

@ -1,4 +1,9 @@
.define .sdf
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! store double offsetted

View file

@ -1,4 +1,9 @@
.define .sdl
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! store double local at any offset
! parameters:

View file

@ -1,4 +1,9 @@
.define .set
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! use .unimpld
! any size sets

View file

@ -1,4 +1,9 @@
.define .strhp
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
.strhp:
pop ix

View file

@ -1,4 +1,9 @@
.define .sts
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! use trp.z
! object size given by 2-byte integer on

View file

@ -1,4 +1,9 @@
.define .trp.z
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! changed into output routine to print errornumber

View file

@ -1,4 +1,9 @@
.define unimpld, e.mon, e.rck, .trp.z, .unimpld
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
.unimpld:
unimpld: ! used in dispatch table to

View file

@ -1,4 +1,9 @@
.define .xor
.sect .text
.sect .rom
.sect .data
.sect .bss
.sect .text
! auxiliary size 'xor'
! parameters: