mirror of
https://github.com/forth-ev/VolksForth.git
synced 2024-11-29 21:49:17 +00:00
1 line
40 KiB
Plaintext
1 line
40 KiB
Plaintext
|
\\ *** volksFORTH-84 Target-Compiler *** Mit dem Target-Compiler l<><6C>t sich ein neues System aus dem Quelltext FORTH_83.SCR 'hochziehen'. \ Target compiler loadscr 09sep86we\ Idea and first Implementation by ks/bp \ Implemented on 6502 by ks/bp \ ultraFORTH83-Version by bp/we \ Atari 520 ST - Version by we Onlyforth Assembler nonrelocate 07 Constant imagepage \ Virtual memory bank Vocabulary Ttools Vocabulary Defining : .stat .blk .s ; ' .stat Is .status \ : 65( [compile] ( ; immediate : 65( ; immediate : ) ; immediate \ cpu-addressing|lbyte|hbyte| 1 $14 +thru \ Target compiler $15 $17 +thru \ Target Tools $18 $1A +thru \ Redefinitions save $1B $25 +thru \ Predefinitions \ Target header pointers bp05mar86we Variable tdp : there tdp @ ; Variable displace Variable ?thead 0 ?thead ! Variable tlast 0 tlast ! Variable glast' 0 glast' ! Variable tdoes> Variable >in: Variable tvoc 0 tvoc ! Variable tvoc-link 0 tvoc-link ! Variable tnext-link 0 tnext-link ! Variable tdodo Variable tfile-link 0 tfile-link ! : c+! ( 8b addr -- ) dup c@ rot + swap c! ; \ Image and byteorder 15sep86we : >image ( addr1 - addr2 ) displace @ - ; : >heap ( from quan - ) heap over - 1 and + \ 68000-align dup hallot heap swap cmove ; \ : >ascii 2drop ; ' noop Alias C64>ascii Code Lc@ ( laddr -- 8b ) .l SP )+ A0 move .w D0 clr .b A0 ) D0 move .w D0 SP -) move Next end-code Code Lc! ( 8b addr -- ) .l SP )+ A0 move .w SP )+ D0 move .b D0 A0 ) move Next end-code
|