diff --git a/.github/workflows/build-on-pull-request.yml b/.github/workflows/build-on-pull-request.yml index f5477d191..e121aaca5 100644 --- a/.github/workflows/build-on-pull-request.yml +++ b/.github/workflows/build-on-pull-request.yml @@ -33,6 +33,73 @@ jobs: - name: Test that the samples can be built. shell: bash run: make -j2 samples + - name: Test that the targettest programs can be built. + shell: bash + run: | + make SYS=c64 -C targettest all + make SYS=c64 -C targettest clean + make SYS=apple2 -C targettest + make SYS=apple2 -C targettest clean + make SYS=apple2enh -C targettest + make SYS=apple2enh -C targettest clean + make SYS=atari -C targettest + make SYS=atari -C targettest clean + make SYS=atarixl -C targettest + make SYS=atarixl -C targettest clean + # make SYS=atari2600 -C targettest + # make SYS=atari2600 -C targettest clean + # make SYS=atari5200 -C targettest + # make SYS=atari5200 -C targettest clean + # make SYS=atmos -C targettest + # make SYS=atmos -C targettest clean + # make SYS=bbc -C targettest + # make SYS=bbc -C targettest clean + # make SYS=c128 -C targettest + # make SYS=c128 -C targettest clean + # make SYS=c16 -C targettest + # make SYS=c16 -C targettest clean + make SYS=c64 -C targettest + make SYS=c64 -C targettest clean + # make SYS=cbm510 -C targettest + # make SYS=cbm510 -C targettest clean + # make SYS=cbm610 -C targettest + # make SYS=cbm610 -C targettest clean + # make SYS=creativision -C targettest + # make SYS=creativision -C targettest clean + # make SYS=cx16 -C targettest + # make SYS=cx16 -C targettest clean + # make SYS=gamate -C targettest + # make SYS=gamate -C targettest clean + # make SYS=geos-apple -C targettest + # make SYS=geos-apple -C targettest clean + # make SYS=geos-cbm -C targettest + # make SYS=geos-cbm -C targettest clean + # make SYS=lunix -C targettest + # make SYS=lunix -C targettest clean + # make SYS=lynx -C targettest + # make SYS=lynx -C targettest clean + # make SYS=nes -C targettest + # make SYS=nes -C targettest clean + # make SYS=osic1p -C targettest + # make SYS=osic1p -C targettest clean + # make SYS=pce -C targettest + # make SYS=pce -C targettest clean + # make SYS=pet -C targettest + # make SYS=pet -C targettest clean + # make SYS=plus4 -C targettest + # make SYS=plus4 -C targettest clean + # make SYS=sim6502 -C targettest + # make SYS=sim6502 -C targettest clean + # make SYS=sim65c02 -C targettest + # make SYS=sim65c02 -C targettest clean + # make SYS=supervision -C targettest + # make SYS=supervision -C targettest clean + # make SYS=sym1 -C targettest + # make SYS=sym1 -C targettest clean + # make SYS=telestrat -C targettest + # make SYS=telestrat -C targettest clean + make SYS=vic20 -C targettest + make SYS=vic20 -C targettest clean - name: Build the document files. shell: bash run: make -j2 doc @@ -60,3 +127,8 @@ jobs: - name: Build app (release) run: msbuild src\cc65.sln -t:rebuild -property:Configuration=Release + +# TODO: fix tergettest Makefile for all currently commented out targets +# TODO: build targettest cbm subdir for all cbm targets +# TODO: build targettest atari subdir for all atari targets +# TODO: build targettest apple2 subdir for all apple2 targets diff --git a/asminc/pet.inc b/asminc/pet.inc index d165bb336..ee96d378c 100644 --- a/asminc/pet.inc +++ b/asminc/pet.inc @@ -50,7 +50,6 @@ PET_2000 = $CA PET_3000 = $FC PET_4000 = $FD - ;---------------------------------------------------------------------------- ; Vector and other locations @@ -59,7 +58,25 @@ BRKVec := $0092 NMIVec := $0094 ; --------------------------------------------------------------------------- -; I/O: 6522 VIA2 +; I/O: 6520 PIA1 + +PIA1 := $E810 ; PIA1 base address +PIA1_PORTA := PIA1+$0 ; Port A (PA) and data direction register A (DDRA) +PIA1_PACTL := PIA1+$1 ; Port A control register (CRA) +PIA1_PORTB := PIA1+$2 ; Port B (PB) and data direction register B (DDRB) +PIA1_PBCTL := PIA1+$3 ; Port B control register (CRB) + +; --------------------------------------------------------------------------- +; I/O: 6520 PIA2 + +PIA2 := $E820 ; PIA2 base address +PIA2_PORTA := PIA2+$0 ; Port A (PA) and data direction register A (DDRA) +PIA2_PACTL := PIA2+$1 ; Port A control register (CRA) +PIA2_PORTB := PIA2+$2 ; Port B (PB) and data direction register B (DDRB) +PIA2_PBCTL := PIA2+$3 ; Port B control register (CRB) + +; --------------------------------------------------------------------------- +; I/O: 6522 VIA VIA := $E840 ; VIA base address VIA_PB := VIA+$0 ; Port register B diff --git a/doc/atari.sgml b/doc/atari.sgml index 85dcaaf5e..ff41d0bb4 100644 --- a/doc/atari.sgml +++ b/doc/atari.sgml @@ -726,6 +726,11 @@ for sectors 1 to 3, regardless of the type of diskette. The console I/O is speed optimized therefore support for XEP80 hardware or f80.com software is missing. Of course you may use stdio.h functions. +Technical details