Get vf-latest to target-compile from mostly .fth sources.

This requires a small target compiler tweak and some massaging of the fth source:
Esp. some create-does> constructs have to be moved into a single line.
This commit is contained in:
Philip Zembrod 2020-07-11 23:19:56 +02:00
parent 1bd8d592c2
commit e4d6de49a2
11 changed files with 252 additions and 1909 deletions

View File

@ -36,9 +36,15 @@ debug-64: emulator/tcbase.T64 emulator/build-vf.sh \
# Temporary bincmp target while the old and the new binaries are still
# expected to be binary identical.
# Note: There is now 1 byte difference between the
# old c64/c16-volksforth83 and the new c64/c16-vf-reference:
# Byte $1b64 changed from $7c (old) to $dc (new).
# This corresponds to the ." |" string in .name (blk/page $4e).
# Since both represent the same character in PETSCII, namely | ,
# the difference is acceptable, and a new reference binary was set.
bincmp: cbmfiles/c64-vf-latest cbmfiles/c16-vf-latest
cmp -b -l cbmfiles/c64-vf-latest cbmfiles/c64-volksforth83
cmp -b -l cbmfiles/c16-vf-latest cbmfiles/c16-volksforth83
cmp -b -l cbmfiles/c64-vf-latest tests/c64-vf-reference
cmp -b -l cbmfiles/c16-vf-latest tests/c16-vf-reference
run-devenv: emulator/devenv.T64
emulator/run-in-vice.sh devenv

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because one or more lines are too long

View File

@ -449,12 +449,15 @@ Code cSave ( f t+1 Name Nlen dev--err)
\ *** Block No. 16, Hexblock 10
\ Target compiler loadscr clv14oct87
\ Target compiler loadscr 11jul20pz
\ Idea and first Implementation by ks/bp
\ Implemented on 6502 by ks/bp
\ volksFORTH83-Version by bp/we
Onlyforth hex
: (blk@ blk @ ;
Defer blk@ ' (blk@ is blk@
\needs (16 .( ?! (16 (64 ?! C) quit
Assembler \needs nonrelocate 5 load
Assembler nonrelocate
@ -472,9 +475,6 @@ clear
\ hex 17 20 +thru \ predefinitions
\ *** Block No. 17, Hexblock 11
\ Target header pointers bp27jun85we
@ -785,7 +785,7 @@ Forth definitions
\ *** Block No. 28, Hexblock 1c
\ compiling names into targ. bp27jun85we
\ compiling names into targ. 11jul20pz
: (theader
?thead @ IF 1 ?thead +!
@ -794,7 +794,7 @@ Forth definitions
dup c@ 1 020 uwithin not
abort" inval. Tname"
dup c@ 5 + there + 6502-talign
blk @ T , H
blk@ T , H
there tlatest dup @ T , H !
there dup tlast ! over
c@ 1+ dup T allot cmove H ;

File diff suppressed because it is too large Load Diff

View File

@ -8,7 +8,7 @@ Onlyforth
Target definitions here!
$10 $7D thru
include vf-blk-10-7d.fth
Assembler nonrelocate

View File

@ -58,3 +58,18 @@ forget delete Onlyforth
THEN ;
' status is .status
variable current-page 0 current-page !
: fthpage ( page# -- )
dup current-page !
." page " u.
." here " here u.
." there " there u.
." heap " heap u. cr ;
: blk-or-page@ ( -- blk#/page# )
blk @ ?dup ?exit
current-page @ ;
' blk-or-page@ is blk@

Binary file not shown.

Binary file not shown.