mirror of
https://github.com/a2-4am/4sports.git
synced 2025-04-09 18:38:23 +00:00
add Checkers
This commit is contained in:
parent
6694960bbe
commit
90f1d0b4bc
BIN
res/ACTION.HGR.UNCOMPRESSED/CHECKERS
Normal file
BIN
res/ACTION.HGR.UNCOMPRESSED/CHECKERS
Normal file
Binary file not shown.
BIN
res/ACTION.HGR/CHECKERS
Normal file
BIN
res/ACTION.HGR/CHECKERS
Normal file
Binary file not shown.
8
res/ATTRACT/CHECKERS
Normal file
8
res/ATTRACT/CHECKERS
Normal file
@ -0,0 +1,8 @@
|
||||
#
|
||||
# Attract mode for CHECKERS
|
||||
# This file is automatically generated
|
||||
#
|
||||
|
||||
CHECKERS=A
|
||||
|
||||
[eof]
|
BIN
res/CACHE00.IDX
BIN
res/CACHE00.IDX
Binary file not shown.
BIN
res/CACHE01.IDX
BIN
res/CACHE01.IDX
Binary file not shown.
BIN
res/CACHE10.IDX
BIN
res/CACHE10.IDX
Binary file not shown.
BIN
res/CACHE11.IDX
BIN
res/CACHE11.IDX
Binary file not shown.
@ -31,6 +31,7 @@
|
||||
11000,BASEBALL=Championship Baseball
|
||||
11000,CHAMP.BSKETBALL=Championship Basketball
|
||||
01000,CHAMP.WRESTLE=Championship Wrestling
|
||||
00001,CHECKERS=Checkers
|
||||
10001,CMPTR.FOOSBALL=Computer Foosball
|
||||
10000,DIVE.BOMBER=Dive Bomber
|
||||
10000,FIGHT.NIGHT=Fight Night
|
||||
|
@ -6,6 +6,7 @@ CHAMP.WRESTLE
|
||||
CHAMP.BSKETBAL2=CHAMP.BSKETBALL
|
||||
BLACK.BELT
|
||||
BOP.N.WRESTLE
|
||||
CHECKERS
|
||||
AUTOBAHN
|
||||
BLACK.BELT2=BLACK.BELT
|
||||
CHAMP.BSKETBALL
|
||||
|
@ -5,7 +5,9 @@
|
||||
KONO
|
||||
MU.TORERE
|
||||
REVERSI
|
||||
CHECKERS
|
||||
SEEGA
|
||||
MICROCHESS
|
||||
ROCK.N.SCROLL
|
||||
NINE.MENS
|
||||
PENSATE
|
||||
|
@ -8,8 +8,10 @@ PENSATE
|
||||
KONO
|
||||
MU.TORERE
|
||||
REVERSI
|
||||
CHECKERS
|
||||
SEEGA
|
||||
NINE.MENS
|
||||
MICROCHESS
|
||||
ROCK.N.SCROLL
|
||||
|
||||
[eof]
|
||||
|
@ -9,5 +9,6 @@ AUTOBAHN
|
||||
CMPTR.FOOSBALL
|
||||
#BASEBALL
|
||||
CHAMP.WRESTLE
|
||||
CHECKERS
|
||||
|
||||
[eof]
|
||||
|
BIN
res/TITLE.HGR.UNPACKED/CHECKERS
Normal file
BIN
res/TITLE.HGR.UNPACKED/CHECKERS
Normal file
Binary file not shown.
1
res/TITLE.HGR/CHECKERS
Normal file
1
res/TITLE.HGR/CHECKERS
Normal file
File diff suppressed because one or more lines are too long
BIN
res/dsk/checkers (4am pack).po
Normal file
BIN
res/dsk/checkers (4am pack).po
Normal file
Binary file not shown.
@ -4,6 +4,7 @@
|
||||
|
||||
### New games
|
||||
|
||||
- Checkers
|
||||
- Fox & Geese
|
||||
- Hi-Res Football
|
||||
- Hi-Res Soccer
|
||||
|
51
res/ports/checkers/Makefile
Normal file
51
res/ports/checkers/Makefile
Normal file
@ -0,0 +1,51 @@
|
||||
# https://sourceforge.net/projects/acme-crossass/
|
||||
ACME=acme
|
||||
|
||||
# https://github.com/mach-kernel/cadius
|
||||
CADIUS=cadius
|
||||
|
||||
EXOMIZER=exomizer mem -lnone -P23 -f -q
|
||||
|
||||
BUILDDIR=build
|
||||
DISKVOLUME=CHECKERS
|
||||
LOADER=$(BUILDDIR)/LOADER.SYSTEM\#FF2000
|
||||
EXE=$(BUILDDIR)/CHECKERS\#068000
|
||||
COMPRESSED=src/OBJ.X
|
||||
SOURCES=$(wildcard src/*.a) $(COMPRESSED)
|
||||
RES=$(wildcard res/*) $(wildcard ../common/res/*)
|
||||
BUILDDISK=$(BUILDDIR)/$(DISKVOLUME).po
|
||||
|
||||
.PHONY: clean mount all
|
||||
|
||||
$(BUILDDISK): $(EXE) $(LOADER) $(RES)
|
||||
|
||||
$(LOADER): $(SOURCES) | $(BUILDDIR)
|
||||
$(ACME) src/loader.a
|
||||
$(CADIUS) REPLACEFILE "$(BUILDDISK)" "/$(DISKVOLUME)/" "$(LOADER)" -C
|
||||
@touch "$@"
|
||||
|
||||
$(EXE): $(SOURCES) $(COMPRESSED) | $(BUILDDIR)
|
||||
$(ACME) src/checkers.a
|
||||
$(CADIUS) REPLACEFILE "$(BUILDDISK)" "/$(DISKVOLUME)/" "$(EXE)" -C
|
||||
@touch "$@"
|
||||
|
||||
$(RES): $(BUILDDIR)
|
||||
$(CADIUS) REPLACEFILE "$(BUILDDISK)" "/$(DISKVOLUME)/" "$@" -C
|
||||
@touch "$@"
|
||||
|
||||
$(COMPRESSED):
|
||||
$(EXOMIZER) src/OBJ@0x0800 -o "$@"
|
||||
|
||||
mount: $(BUILDDISK)
|
||||
@open "$(BUILDDISK)"
|
||||
|
||||
clean:
|
||||
rm -rf "$(BUILDDIR)"
|
||||
|
||||
$(BUILDDIR):
|
||||
mkdir -p "$@"
|
||||
$(CADIUS) CREATEVOLUME "$(BUILDDISK)" "$(DISKVOLUME)" 140KB -C
|
||||
|
||||
all: clean mount
|
||||
|
||||
.NOTPARALLEL:
|
1
res/ports/checkers/notes.txt
Normal file
1
res/ports/checkers/notes.txt
Normal file
@ -0,0 +1 @@
|
||||
OBJ contains $0800..$5FFF, then $0200..$02FF
|
BIN
res/ports/checkers/src/OBJ
Normal file
BIN
res/ports/checkers/src/OBJ
Normal file
Binary file not shown.
BIN
res/ports/checkers/src/OBJ.X
Normal file
BIN
res/ports/checkers/src/OBJ.X
Normal file
Binary file not shown.
48
res/ports/checkers/src/checkers.a
Normal file
48
res/ports/checkers/src/checkers.a
Normal file
@ -0,0 +1,48 @@
|
||||
!cpu 6502
|
||||
*=$8000
|
||||
!to "build/CHECKERS#068000",plain
|
||||
|
||||
!src "../common/src/constants.a"
|
||||
!src "../common/src/macros.a"
|
||||
|
||||
jmp start
|
||||
|
||||
compressed_data
|
||||
!bin "src/OBJ.X"
|
||||
DECRUNCH_FORWARDS = 1
|
||||
SHOW_PROGRESS_DURING_DECRUNCH = 0
|
||||
!src "../common/src/exodecrunch.a"
|
||||
|
||||
start
|
||||
+INIT_MACHINE
|
||||
!if * != $B8B4 {
|
||||
!serious "Adjust prelaunch to patch JSR at ", *
|
||||
}
|
||||
jsr decrunch ; compressed data contains target address
|
||||
bit GFXMODE
|
||||
bit PAGE2
|
||||
bit HIRES
|
||||
bit MIXEDGFX
|
||||
ldy #$00
|
||||
- lda $6000, y
|
||||
sta $0200, y
|
||||
iny
|
||||
bne -
|
||||
lda #$C2 ; set in original bootloader, checked in-game
|
||||
sta $24
|
||||
lda #$00 ; wait loop from original game
|
||||
ldx #$18
|
||||
@wait jsr ROM_WAIT
|
||||
dex
|
||||
bmi @exit
|
||||
bit KBD
|
||||
bpl @wait
|
||||
@exit bit CLEARKBD
|
||||
jmp $3B6C
|
||||
|
||||
get_crunched_byte
|
||||
lda compressed_data
|
||||
inc get_crunched_byte+1
|
||||
bne +
|
||||
inc get_crunched_byte+2
|
||||
+ rts
|
25
res/ports/checkers/src/loader.a
Normal file
25
res/ports/checkers/src/loader.a
Normal file
@ -0,0 +1,25 @@
|
||||
!cpu 6502
|
||||
*=$2000
|
||||
!to "build/LOADER.SYSTEM#FF2000",plain
|
||||
|
||||
!src "../common/src/constants.a"
|
||||
!src "../common/src/macros.a"
|
||||
|
||||
+READ_ENTIRE_FILE parm_boot_open, parm_boot_read
|
||||
jmp (entry)
|
||||
|
||||
parm_boot_open
|
||||
!byte 3
|
||||
!word filename
|
||||
!word $2100
|
||||
!byte 0
|
||||
|
||||
parm_boot_read
|
||||
!byte 4
|
||||
!byte 1
|
||||
entry !word $8000
|
||||
!word $FFFF
|
||||
!word 0
|
||||
|
||||
filename
|
||||
!text 8,"CHECKERS"
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2121290
|
||||
!be24 2144467
|
||||
!le16 571
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2108658
|
||||
!be24 2131775
|
||||
!le16 978
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2100096
|
||||
!le16 322
|
||||
!be24 2123047
|
||||
!le16 329
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2101846
|
||||
!le16 576
|
||||
!be24 2124832
|
||||
!le16 601
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2103972
|
||||
!le16 549
|
||||
!be24 2127011
|
||||
!le16 563
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2106733
|
||||
!le16 855
|
||||
!be24 2129814
|
||||
!le16 876
|
||||
|
@ -3,4 +3,4 @@
|
||||
;
|
||||
; This file is automatically generated
|
||||
;
|
||||
!word 27
|
||||
!word 28
|
||||
|
@ -3,4 +3,4 @@
|
||||
;
|
||||
; This file is automatically generated
|
||||
;
|
||||
!word 39
|
||||
!word 40
|
||||
|
@ -3,4 +3,4 @@
|
||||
;
|
||||
; This file is automatically generated
|
||||
;
|
||||
!word 44
|
||||
!word 45
|
||||
|
@ -3,4 +3,4 @@
|
||||
;
|
||||
; This file is automatically generated
|
||||
;
|
||||
!word 60
|
||||
!word 61
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2121861
|
||||
!be24 2145038
|
||||
!le16 306
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2122511
|
||||
!be24 2145688
|
||||
!le16 336
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2122847
|
||||
!be24 2146024
|
||||
!le16 303
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 1719927
|
||||
!be24 1728254
|
||||
!le16 69
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2112276
|
||||
!be24 2135393
|
||||
!le16 1640
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2122243
|
||||
!be24 2145420
|
||||
!le16 67
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2121278
|
||||
!be24 2144455
|
||||
!le16 12
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2120416
|
||||
!be24 2143593
|
||||
!le16 810
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2118423
|
||||
!be24 2141585
|
||||
!le16 243
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2109636
|
||||
!be24 2132753
|
||||
!le16 2640
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2114274
|
||||
!le16 1070
|
||||
!be24 2137391
|
||||
!le16 1085
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2122167
|
||||
!be24 2145344
|
||||
!le16 76
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2121226
|
||||
!be24 2144403
|
||||
!le16 52
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2122310
|
||||
!be24 2145487
|
||||
!le16 201
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2118666
|
||||
!le16 335
|
||||
!be24 2141828
|
||||
!le16 350
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2119001
|
||||
!be24 2142178
|
||||
!le16 129
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2119130
|
||||
!be24 2142307
|
||||
!le16 92
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2119222
|
||||
!be24 2142399
|
||||
!le16 192
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2119414
|
||||
!be24 2142591
|
||||
!le16 713
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2120127
|
||||
!be24 2143304
|
||||
!le16 285
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2120412
|
||||
!be24 2143589
|
||||
!le16 4
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2123150
|
||||
!be24 2146327
|
||||
!le16 2370
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2116464
|
||||
!le16 548
|
||||
!be24 2139596
|
||||
!le16 563
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2117012
|
||||
!be24 2140159
|
||||
!le16 526
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2107588
|
||||
!le16 1070
|
||||
!be24 2130690
|
||||
!le16 1085
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 572459
|
||||
!be24 580139
|
||||
!le16 8184
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 588835
|
||||
!be24 596515
|
||||
!le16 8184
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 580643
|
||||
!be24 588323
|
||||
!le16 8192
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2099178
|
||||
!le16 918
|
||||
!be24 2122101
|
||||
!le16 946
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2100418
|
||||
!le16 1428
|
||||
!be24 2123376
|
||||
!le16 1456
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2102422
|
||||
!le16 1550
|
||||
!be24 2125433
|
||||
!le16 1578
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2104521
|
||||
!le16 2212
|
||||
!be24 2127574
|
||||
!le16 2240
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2113916
|
||||
!be24 2137033
|
||||
!le16 358
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2115344
|
||||
!be24 2138476
|
||||
!le16 1120
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2117538
|
||||
!le16 885
|
||||
!be24 2140685
|
||||
!le16 900
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2098689
|
||||
!le16 489
|
||||
!be24 2121595
|
||||
!le16 506
|
||||
|
19
src/prelaunch/checkers.a
Normal file
19
src/prelaunch/checkers.a
Normal file
@ -0,0 +1,19 @@
|
||||
;license:MIT
|
||||
|
||||
!cpu 6502
|
||||
!to "build/PRELAUNCH.INDEXED/CHECKERS",plain
|
||||
*=$106
|
||||
|
||||
!source "src/prelaunch/common.a"
|
||||
|
||||
+ENABLE_ACCEL
|
||||
lda #$4C
|
||||
sta $B8B4
|
||||
jsr $8000
|
||||
+DISABLE_ACCEL
|
||||
+RESET_VECTOR $100
|
||||
jmp $B8B7
|
||||
|
||||
!if * > $1C0 {
|
||||
!error "code is too large, ends at ", *
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user