mirror of
https://github.com/a2-4am/4sports.git
synced 2025-04-06 12:38:01 +00:00
add Fastgammon
This commit is contained in:
parent
09e4b1a7a0
commit
7cc42d199e
BIN
res/ACTION.HGR.UNCOMPRESSED/FASTGAMMON
Normal file
BIN
res/ACTION.HGR.UNCOMPRESSED/FASTGAMMON
Normal file
Binary file not shown.
BIN
res/ACTION.HGR/FASTGAMMON
Normal file
BIN
res/ACTION.HGR/FASTGAMMON
Normal file
Binary file not shown.
6
res/ATTRACT/FASTGAMMON
Normal file
6
res/ATTRACT/FASTGAMMON
Normal file
@ -0,0 +1,6 @@
|
||||
#
|
||||
# Attract mode for FASTGAMMON
|
||||
# This file is automatically generated
|
||||
#
|
||||
|
||||
FASTGAMMON=A
|
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.
@ -43,6 +43,7 @@
|
||||
100001,DIVE.BOMBER=Dive Bomber/1988
|
||||
000010,DRAW.POKER=Draw Poker/1981
|
||||
100001,F15.STRK.EGL=F-15 Strike Eagle/1985
|
||||
000010,FASTGAMMON=Fastgammon/1979
|
||||
011000,FAMILY.FEUD=Family Feud/1989
|
||||
100001,FIGHT.NIGHT=Fight Night/1985
|
||||
000001,FS2=Flight Simulator II/1984
|
||||
|
@ -3,6 +3,7 @@ REVERSI
|
||||
CHECKERS
|
||||
MICROCHESS
|
||||
GO.FOUR.IT
|
||||
FASTGAMMON
|
||||
DRAW.POKER
|
||||
ACEY.DEUCEY
|
||||
ODIN
|
||||
|
@ -2,6 +2,7 @@
|
||||
DIVE.BOMBER2=DIVE.BOMBER
|
||||
FIGHT.NIGHT
|
||||
DIVE.BOMBER
|
||||
FASTGAMMON
|
||||
F15.STRK.EGL
|
||||
DIVE.BOMBER5=DIVE.BOMBER
|
||||
FORMULA.1.RACER
|
||||
|
@ -4,6 +4,7 @@ ACEY.DEUCEY
|
||||
ODIN
|
||||
GO.FOUR.IT
|
||||
ULTRACHECKERS
|
||||
FASTGAMMON
|
||||
DRAW.POKER
|
||||
REVERSI
|
||||
GO
|
||||
|
@ -4,5 +4,6 @@ FIGHT.NIGHT
|
||||
F15.STRK.EGL
|
||||
DRAW.POKER
|
||||
FORMULA.1.RACER
|
||||
FASTGAMMON
|
||||
FOX.AND.GEESE
|
||||
FS2
|
||||
|
BIN
res/TITLE.HGR.UNPACKED/FASTGAMMON
Normal file
BIN
res/TITLE.HGR.UNPACKED/FASTGAMMON
Normal file
Binary file not shown.
BIN
res/TITLE.HGR/FASTGAMMON
Normal file
BIN
res/TITLE.HGR/FASTGAMMON
Normal file
Binary file not shown.
BIN
res/dsk/fastgammon (4am pack).po
Normal file
BIN
res/dsk/fastgammon (4am pack).po
Normal file
Binary file not shown.
@ -2,6 +2,10 @@
|
||||
|
||||
## Revision 1.0-alpha.5 / unreleased
|
||||
|
||||
### New games in v1.0-alpha.5
|
||||
|
||||
- Fastgammon
|
||||
|
||||
### Migrated from Total Replay in v1.0-alpha.5
|
||||
|
||||
- Bejeweled
|
||||
|
51
res/ports/fastgammon/Makefile
Normal file
51
res/ports/fastgammon/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=FASTGAMMON
|
||||
LOADER=$(BUILDDIR)/LOADER.SYSTEM\#FF2000
|
||||
EXE=$(BUILDDIR)/FASTGAMMON\#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/fastgammon.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:
|
BIN
res/ports/fastgammon/src/OBJ
Normal file
BIN
res/ports/fastgammon/src/OBJ
Normal file
Binary file not shown.
BIN
res/ports/fastgammon/src/OBJ.X
Normal file
BIN
res/ports/fastgammon/src/OBJ.X
Normal file
Binary file not shown.
30
res/ports/fastgammon/src/fastgammon.a
Normal file
30
res/ports/fastgammon/src/fastgammon.a
Normal file
@ -0,0 +1,30 @@
|
||||
!cpu 6502
|
||||
*=$8000
|
||||
!to "build/FASTGAMMON#068000",plain
|
||||
|
||||
!src "../common/src/constants.a"
|
||||
!src "../common/src/macros.a"
|
||||
|
||||
jmp start
|
||||
|
||||
compressed_data
|
||||
!bin "src/OBJ.X"
|
||||
FORWARD_DECRUNCHING = 1
|
||||
SHOW_PROGRESS_DURING_DECRUNCH = 1
|
||||
kExoProgressWidth = 7 ; depends on total size, max 38
|
||||
!src "../common/src/exodecrunch.a"
|
||||
|
||||
start
|
||||
+INIT_MACHINE
|
||||
!if * != $97D9 {
|
||||
!serious "Adjust prelaunch to patch JSR at ", *, " to JMP"
|
||||
}
|
||||
jsr decrunch ; compressed data contains target address
|
||||
jmp $0800
|
||||
|
||||
get_crunched_byte
|
||||
lda compressed_data
|
||||
inc get_crunched_byte+1
|
||||
bne +
|
||||
inc get_crunched_byte+2
|
||||
+ rts
|
25
res/ports/fastgammon/src/loader.a
Normal file
25
res/ports/fastgammon/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 10,"FASTGAMMON"
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2999136
|
||||
!be24 3015442
|
||||
!le16 652
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2981413
|
||||
!be24 2997632
|
||||
!le16 1559
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2968093
|
||||
!le16 588
|
||||
!be24 2984121
|
||||
!le16 602
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2970953
|
||||
!le16 956
|
||||
!be24 2987027
|
||||
!le16 981
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2974211
|
||||
!le16 938
|
||||
!be24 2990342
|
||||
!le16 952
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2978434
|
||||
!le16 1405
|
||||
!be24 2994611
|
||||
!le16 1430
|
||||
|
@ -3,4 +3,4 @@
|
||||
;
|
||||
; This file is automatically generated
|
||||
;
|
||||
!word 45
|
||||
!word 46
|
||||
|
@ -3,4 +3,4 @@
|
||||
;
|
||||
; This file is automatically generated
|
||||
;
|
||||
!word 65
|
||||
!word 66
|
||||
|
@ -3,4 +3,4 @@
|
||||
;
|
||||
; This file is automatically generated
|
||||
;
|
||||
!word 66
|
||||
!word 67
|
||||
|
@ -3,4 +3,4 @@
|
||||
;
|
||||
; This file is automatically generated
|
||||
;
|
||||
!word 91
|
||||
!word 92
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2999788
|
||||
!be24 3016094
|
||||
!le16 237
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 3000369
|
||||
!be24 3016675
|
||||
!le16 336
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 3000705
|
||||
!be24 3017011
|
||||
!le16 309
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2982972
|
||||
!be24 2999191
|
||||
!le16 69
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2986398
|
||||
!be24 3002636
|
||||
!le16 1640
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 3000101
|
||||
!be24 3016407
|
||||
!le16 67
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2999116
|
||||
!be24 3015422
|
||||
!le16 20
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2998002
|
||||
!be24 3014308
|
||||
!le16 1062
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2995375
|
||||
!be24 3011664
|
||||
!le16 365
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2983758
|
||||
!be24 2999996
|
||||
!le16 2640
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2988396
|
||||
!be24 3004634
|
||||
!le16 246
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2988642
|
||||
!be24 3004880
|
||||
!le16 538
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2989180
|
||||
!le16 1574
|
||||
!be24 3005418
|
||||
!le16 1591
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 3000025
|
||||
!be24 3016331
|
||||
!le16 76
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2999064
|
||||
!be24 3015370
|
||||
!le16 52
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 3000168
|
||||
!be24 3016474
|
||||
!le16 201
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2995740
|
||||
!be24 3012029
|
||||
!le16 456
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2996196
|
||||
!le16 209
|
||||
!be24 3012485
|
||||
!le16 226
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2996405
|
||||
!be24 3012711
|
||||
!le16 107
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2996512
|
||||
!be24 3012818
|
||||
!le16 292
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2996804
|
||||
!be24 3013110
|
||||
!le16 791
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2997595
|
||||
!be24 3013901
|
||||
!le16 380
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2997975
|
||||
!be24 3014281
|
||||
!le16 27
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 3001014
|
||||
!be24 3017320
|
||||
!le16 2370
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2992530
|
||||
!le16 931
|
||||
!be24 3008785
|
||||
!le16 948
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2993461
|
||||
!be24 3009733
|
||||
!le16 647
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2979839
|
||||
!le16 1574
|
||||
!be24 2996041
|
||||
!le16 1591
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 869931
|
||||
!be24 878123
|
||||
!le16 8184
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 886307
|
||||
!be24 894499
|
||||
!le16 8184
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 878115
|
||||
!be24 886307
|
||||
!le16 8192
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2966602
|
||||
!le16 1491
|
||||
!be24 2982598
|
||||
!le16 1523
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2968681
|
||||
!le16 2272
|
||||
!be24 2984723
|
||||
!le16 2304
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2971909
|
||||
!le16 2302
|
||||
!be24 2988008
|
||||
!le16 2334
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2975149
|
||||
!le16 3285
|
||||
!be24 2991294
|
||||
!le16 3317
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2988038
|
||||
!be24 3004276
|
||||
!le16 358
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2990754
|
||||
!be24 3007009
|
||||
!le16 1776
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2994108
|
||||
!le16 1267
|
||||
!be24 3010380
|
||||
!le16 1284
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 2983041
|
||||
!le16 717
|
||||
!be24 2999260
|
||||
!le16 736
|
||||
|
19
src/prelaunch/fastgammon.a
Normal file
19
src/prelaunch/fastgammon.a
Normal file
@ -0,0 +1,19 @@
|
||||
;license:MIT
|
||||
;(c) 2024 by 4am
|
||||
|
||||
!cpu 6502
|
||||
!to "build/PRELAUNCH.INDEXED/FASTGAMMON",plain
|
||||
*=$106
|
||||
|
||||
!source "src/macros.a"
|
||||
|
||||
+ENABLE_ACCEL
|
||||
lda #$4C
|
||||
sta $97D9
|
||||
jsr $8000
|
||||
+DISABLE_ACCEL
|
||||
jmp $97D9+3
|
||||
|
||||
!if * > HideLaunchArtwork {
|
||||
!error "code is too large, ends at ", *
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user