mirror of
https://github.com/forth-ev/VolksForth.git
synced 2024-11-26 17:49:18 +00:00
Get VolksForth versions for C16 with 32k to work. Aka (C16-
This commit is contained in:
parent
a14cfd701d
commit
6c58b57f63
@ -13,8 +13,7 @@ vf_binaries = $(patsubst %, cbmfiles/vf-%, $(vf_flavours))
|
||||
test_files = $(wildcard tests/*.f*)
|
||||
test_files_petscii = $(patsubst tests/%, cbmfiles/%, $(test_files))
|
||||
test_logs = $(patsubst %, test-%.log, $(vf_flavours))
|
||||
working_vf_flavours = full-c64 full-c16+ lite-c64 lite-c16+
|
||||
test_resuls = $(patsubst %, test-%.result, $(working_vf_flavours))
|
||||
test_resuls = $(patsubst %, test-%.result, $(vf_flavours))
|
||||
|
||||
# Target to convert all .d64 images into .fth files for easier reading,
|
||||
# and to update all PETSCII files in cbmfiles to the latest state of
|
||||
@ -33,7 +32,9 @@ clean:
|
||||
|
||||
test: $(test_resuls)
|
||||
|
||||
test64: test-full-c64.result
|
||||
test64: full64 lite64
|
||||
|
||||
full64: test-full-c64.result
|
||||
|
||||
lite64: test-lite-c64.result
|
||||
|
||||
@ -103,6 +104,16 @@ test-lite-c16+.log: emulator/vf-lite-c16+.T64
|
||||
"include run-min-tests.fth\n1234567890\n"
|
||||
petscii2ascii cbmfiles/test.log $@
|
||||
|
||||
test-full-c16-.log: emulator/vf-full-c16-.T64
|
||||
VICE=xplus4 emulator/run-in-vice.sh vf-full-c16- \
|
||||
"include run-min-tests.fth\n1234567890\n"
|
||||
petscii2ascii cbmfiles/test.log $@
|
||||
|
||||
test-lite-c16-.log: emulator/vf-lite-c16-.T64
|
||||
VICE=xplus4 emulator/run-in-vice.sh vf-lite-c16- \
|
||||
"include run-min-tests.fth\n1234567890\n"
|
||||
petscii2ascii cbmfiles/test.log $@
|
||||
|
||||
test-%.result: test-%.log test-%.golden tests/evaluate-test.sh
|
||||
rm -f $@
|
||||
tests/evaluate-test.sh $(basename $@)
|
||||
@ -128,6 +139,12 @@ test-full-c16+.golden: $(c16_golden_parts)
|
||||
test-lite-c16+.golden: $(c16_golden_parts)
|
||||
cat $? > $@
|
||||
|
||||
test-full-c16-.golden: $(c16_golden_parts)
|
||||
cat $? > $@
|
||||
|
||||
test-lite-c16-.golden: $(c16_golden_parts)
|
||||
cat $? > $@
|
||||
|
||||
# Rules for building Forth binaries on top of the plain vanilla
|
||||
# c64-volksforth83.
|
||||
|
||||
|
Binary file not shown.
BIN
6502/C64/cbmfiles/vf-full-c16-
Normal file
BIN
6502/C64/cbmfiles/vf-full-c16-
Normal file
Binary file not shown.
Binary file not shown.
BIN
6502/C64/cbmfiles/vf-lite-c16-
Normal file
BIN
6502/C64/cbmfiles/vf-lite-c16-
Normal file
Binary file not shown.
14
6502/C64/src/vf-c16+irq.fth
Normal file
14
6502/C64/src/vf-c16+irq.fth
Normal file
@ -0,0 +1,14 @@
|
||||
|
||||
|
||||
$fcb3 >label IRQ \ normal IRQ
|
||||
$fffe >label >IRQ \ 6502-Ptr to IRQ
|
||||
|
||||
\ selfmodifying code:
|
||||
Label RAMIRQ \ the new IRQ
|
||||
rom RAMIRQ $15 + sta RAMIRQ $17 + stx
|
||||
( +9) RAMIRQ $1b + $100 u/mod # lda pha
|
||||
# lda pha
|
||||
( +f) tsx $103 ,x lda pha \ flags
|
||||
( +14) 0 # lda 0 # ldx IRQ jmp
|
||||
( +1b) ram rti end-code
|
||||
|
@ -75,18 +75,7 @@ Create ink-pot
|
||||
Code init-system $F7 # ldx txs
|
||||
xyNext jmp end-code
|
||||
|
||||
$fcb3 >label IRQ \ normal IRQ
|
||||
$fffe >label >IRQ \ 6502-Ptr to IRQ
|
||||
|
||||
\ selfmodifying code:
|
||||
Label RAMIRQ \ the new IRQ
|
||||
rom RAMIRQ $15 + sta RAMIRQ $17 + stx
|
||||
( +9) RAMIRQ $1b + $100 u/mod # lda pha
|
||||
# lda pha
|
||||
( +f) tsx $103 ,x lda pha \ flags
|
||||
( +14) 0 # lda 0 # ldx IRQ jmp
|
||||
( +1b) ram rti end-code
|
||||
|
||||
(C16+ include vf-c16+irq.fth )
|
||||
|
||||
\ *** Block No. 147, Hexblock 93
|
||||
93 fthpage
|
||||
@ -96,10 +85,9 @@ Label RAMIRQ \ the new IRQ
|
||||
Label first-init
|
||||
\ will be called in ROM first time
|
||||
\ later called from RAM
|
||||
sei rom
|
||||
RAMIRQ $100 u/mod \ new IRQ
|
||||
# lda >IRQ 1+ sta \ .. install
|
||||
# lda >IRQ sta
|
||||
sei (C16+ rom ( )
|
||||
\ new IRQ install
|
||||
(C16+ RAMIRQ $100 u/mod # lda >IRQ 1+ sta # lda >IRQ sta ( )
|
||||
$FF84 normJsr $FF8A normJsr
|
||||
\ CIAs init. and set I/O-Vectors
|
||||
ink-pot lda BrdCol sta \ border
|
||||
@ -107,7 +95,7 @@ Label first-init
|
||||
ink-pot 2+ lda PenCol sta \ pen
|
||||
$80 # lda KeyRep sta \ repeat all keys
|
||||
$FF13 lda 04 # ora $FF13 sta \ low/upp
|
||||
ram cli rts end-code
|
||||
(C16+ ram ( ) cli rts end-code
|
||||
|
||||
first-init dup bootsystem 1+ !
|
||||
warmboot 1+ !
|
||||
|
@ -97,9 +97,9 @@ Output: display [ here output ! ]
|
||||
|
||||
(C64 | Create (bye $FCE2 here 2- ! )
|
||||
|
||||
(C16- | Create (bye $FF52 here 2- ! )
|
||||
(C16- | Create (bye $FFF6 here 2- ! )
|
||||
|
||||
(C16+ | CODE (bye rom $FF52 jmp end-code )
|
||||
(C16+ | CODE (bye rom $FFF6 jmp end-code )
|
||||
|
||||
|
||||
\ *** Block No. 135, Hexblock 87
|
||||
|
@ -8,3 +8,6 @@
|
||||
: (C16+ [compile] ( ; immediate
|
||||
|
||||
include vf-pr-target.fth
|
||||
|
||||
Assembler also definitions
|
||||
' Jsr Alias NormJsr
|
||||
|
Loading…
Reference in New Issue
Block a user