mirror of
https://github.com/a2-4am/4cade.git
synced 2024-06-04 14:29:45 +00:00
working 128K check, new covers
This commit is contained in:
parent
b03ac885e4
commit
7cc325e35b
15
Makefile
15
Makefile
|
@ -27,16 +27,17 @@ dsk: md asm
|
||||||
cp res/_FileInformation.txt build/
|
cp res/_FileInformation.txt build/
|
||||||
$(CADIUS) ADDFILE build/"$(DISK)" "/${VOLUME}/" "res/PRODOS" >/dev/null
|
$(CADIUS) ADDFILE build/"$(DISK)" "/${VOLUME}/" "res/PRODOS" >/dev/null
|
||||||
$(CADIUS) ADDFILE build/"$(DISK)" "/${VOLUME}/" "build/LAUNCHER.SYSTEM" >/dev/null
|
$(CADIUS) ADDFILE build/"$(DISK)" "/${VOLUME}/" "build/LAUNCHER.SYSTEM" >/dev/null
|
||||||
|
$(CADIUS) ADDFILE build/"$(DISK)" "/${VOLUME}/" "res/games.conf" >/dev/null
|
||||||
$(CADIUS) ADDFILE build/"$(DISK)" "/${VOLUME}/" "res/COVER" >/dev/null
|
$(CADIUS) ADDFILE build/"$(DISK)" "/${VOLUME}/" "res/COVER" >/dev/null
|
||||||
$(CADIUS) ADDFILE build/"$(DISK)" "/${VOLUME}/" "res/COVER.A2FC" >/dev/null
|
$(CADIUS) ADDFILE build/"$(DISK)" "/${VOLUME}/" "res/COVER.A2FC" >/dev/null
|
||||||
$(CADIUS) CREATEFOLDER build/"$(DISK)" "/${VOLUME}/X/" >/dev/null
|
$(CADIUS) CREATEFOLDER build/"$(DISK)" "/${VOLUME}/X/" >/dev/null
|
||||||
bin/do2po.py res/dsk/ build/po/
|
# bin/do2po.py res/dsk/ build/po/
|
||||||
rsync -a res/dsk/*.po build/po/
|
# rsync -a res/dsk/*.po build/po/
|
||||||
bin/extract.py build/po/ | sh
|
# bin/extract.py build/po/ | sh >/dev/null
|
||||||
rm -f build/X/**/.DS_Store
|
# rm -f build/X/**/.DS_Store
|
||||||
rm -f build/X/**/PRODOS
|
# rm -f build/X/**/PRODOS
|
||||||
rm -f build/X/**/LOADER.SYSTEM
|
# rm -f build/X/**/LOADER.SYSTEM
|
||||||
$(CADIUS) ADDFOLDER build/"$(DISK)" "/${VOLUME}/X" "build/X"
|
# $(CADIUS) ADDFOLDER build/"$(DISK)" "/${VOLUME}/X" "build/X" >/dev/null
|
||||||
|
|
||||||
artwork: dsk
|
artwork: dsk
|
||||||
# $(CADIUS) ADDFOLDER build/"$(DISK)" "/${VOLUME}/ARTWORK" "res/artwork"
|
# $(CADIUS) ADDFOLDER build/"$(DISK)" "/${VOLUME}/ARTWORK" "res/artwork"
|
||||||
|
|
BIN
res/COVER.A2FC
BIN
res/COVER.A2FC
Binary file not shown.
|
@ -1,4 +1,4 @@
|
||||||
PRODOS=Type(FF),AuxType(0000),Access(C3)
|
PRODOS=Type(FF),AuxType(0000),Access(C3)
|
||||||
LAUNCHER.SYSTEM=Type(FF),AuxType(2000),Access(C3)
|
LAUNCHER.SYSTEM=Type(FF),AuxType(2000),Access(C3)
|
||||||
COVER=Type(06),AuxType(4000),Access(C3)
|
COVER=Type(06),AuxType(2000),Access(C3)
|
||||||
COVER.A2FC=Type(06),AuxType(2000),Access(C3)
|
COVER.A2FC=Type(06),AuxType(2000),Access(C3)
|
||||||
|
|
BIN
res/attic/COVER
Normal file
BIN
res/attic/COVER
Normal file
Binary file not shown.
BIN
res/attic/COVER.A2FC
Normal file
BIN
res/attic/COVER.A2FC
Normal file
Binary file not shown.
134
src/4cade.a
134
src/4cade.a
|
@ -2,63 +2,99 @@
|
||||||
!to "build/LAUNCHER.SYSTEM",plain
|
!to "build/LAUNCHER.SYSTEM",plain
|
||||||
*=$2000
|
*=$2000
|
||||||
|
|
||||||
jmp Start
|
|
||||||
|
|
||||||
!source "src/constants.a"
|
!source "src/constants.a"
|
||||||
!source "src/macros.a"
|
!source "src/macros.a"
|
||||||
|
|
||||||
|
jsr DisableAccelerator ; set to 1 MHz
|
||||||
|
jsr Has128K ; check for 128K (64K is OK, we just filter out some games)
|
||||||
|
ror MachineStatus
|
||||||
|
jsr HasJoystick ; check for joystick (keyboard-only is OK, we just filter out some games)
|
||||||
|
ror MachineStatus
|
||||||
|
|
||||||
|
lda LCBANK1WRITE ; read ROM / write LC bank 1
|
||||||
|
lda LCBANK1WRITE
|
||||||
|
ldx #$00
|
||||||
|
FM lda FirstMover,x
|
||||||
|
sta $D000,x
|
||||||
|
inx
|
||||||
|
bne FM
|
||||||
|
; inc FM+2
|
||||||
|
; inc FM+5
|
||||||
|
; lda FM+5
|
||||||
|
; cmp #>LastMover
|
||||||
|
; bcc FM
|
||||||
|
|
||||||
|
jsr init ; initialize ProRWTS2 (bye bye ProDOS)
|
||||||
|
lda LCBANK1 ; read/write LC bank 1
|
||||||
|
lda LCBANK1
|
||||||
|
jmp Start
|
||||||
|
|
||||||
!source "src/memcheck.a"
|
!source "src/memcheck.a"
|
||||||
!source "src/joystick.a"
|
!source "src/joystick.a"
|
||||||
!source "src/normfast.a"
|
!source "src/normfast.a"
|
||||||
|
!source "src/prorwts2.a"
|
||||||
|
|
||||||
!zone {
|
FirstMover
|
||||||
|
!pseudopc $D000 {
|
||||||
|
!zone
|
||||||
Start
|
Start
|
||||||
jsr $FE89
|
lda #$00 ; read first $2000 bytes
|
||||||
jsr $FE93
|
sta sizelo
|
||||||
jsr $FB2F
|
lda #$20
|
||||||
jsr $FC58
|
sta sizehi
|
||||||
jsr Has128K
|
lda #0 ; 0 = read into main memory
|
||||||
bmi @found128K
|
sta auxreq
|
||||||
ldy #9
|
lda #cmdread ; read (instead of write)
|
||||||
- lda @s_needs128K,y
|
sta reqcmd
|
||||||
sta $400,y
|
bit MachineStatus
|
||||||
dey
|
bvs @ShowCover128K
|
||||||
bpl -
|
lda #<cover64 ; pointer to length-prefixed filename
|
||||||
@hang bmi @hang
|
sta namlo
|
||||||
@s_needs128K
|
lda #>cover64
|
||||||
!text "NEEDS 128K"
|
sta namhi
|
||||||
@found128K
|
jsr hddopendir ; call ProRWTS2
|
||||||
jsr DisableAccelerator
|
clc
|
||||||
jsr HasJoystick
|
bcc @Show
|
||||||
bcc @hang
|
@ShowCover128K
|
||||||
ldy #10
|
inc auxreq ; 1 = read into aux memory
|
||||||
- lda @s_nojoystick,y
|
lda #<cover128 ; pointer to length-prefixed filename
|
||||||
sta $400,y
|
sta namlo
|
||||||
dey
|
lda #>cover128
|
||||||
bpl -
|
sta namhi
|
||||||
bmi @hang
|
jsr hddopendir ; call ProRWTS2
|
||||||
@s_nojoystick
|
lda #$20 ; read next $2000 bytes
|
||||||
!text "NO JOYSTICK"
|
sta sizehi
|
||||||
}
|
dec auxreq ; 0 = read into main memory
|
||||||
|
jsr hddrdwrpart ; call ProRWTS2
|
||||||
|
|
||||||
; jsr init ; initialize ProRWTS2
|
sta $C000 ; display double hi-res page 1
|
||||||
; lda $C08B
|
sta $C00D
|
||||||
; lda $C08B
|
sta $C05E
|
||||||
; lda #<cover
|
sta $C001
|
||||||
; sta namlo
|
@Show
|
||||||
; lda #>cover
|
sta $C057
|
||||||
; sta namhi
|
sta $C052
|
||||||
; lda #0
|
sta $C054
|
||||||
; sta sizelo
|
sta $C050
|
||||||
; lda #$20
|
|
||||||
; sta sizehi
|
bit $C010
|
||||||
; jsr hddopendir
|
- lda $C000
|
||||||
; bit $C055
|
bpl -
|
||||||
; bit $C052
|
bit $C010
|
||||||
; bit $C057
|
brk
|
||||||
; bit $C050
|
|
||||||
;cover !byte cover_e-cover_b
|
cover64
|
||||||
;cover_b !text "COVER"
|
!byte cover64_e-cover64_b
|
||||||
;cover_e
|
cover64_b
|
||||||
|
!text "COVER"
|
||||||
|
cover64_e
|
||||||
|
cover128
|
||||||
|
!byte cover128_e-cover128_b
|
||||||
|
cover128_b
|
||||||
|
!text "COVER.A2FC"
|
||||||
|
cover128_e
|
||||||
|
}
|
||||||
|
LastMover
|
||||||
|
|
||||||
;LoadDHGR
|
;LoadDHGR
|
||||||
; sta $C000
|
; sta $C000
|
||||||
|
|
|
@ -16,8 +16,10 @@ SLOT3STATUS = $C017 ; read high bit only
|
||||||
|
|
||||||
LCBANK2READ = $C080 ; read once to R RAM bank 2 / no write
|
LCBANK2READ = $C080 ; read once to R RAM bank 2 / no write
|
||||||
ROMIN = $C081 ; read twice to R ROM / W RAM bank 2
|
ROMIN = $C081 ; read twice to R ROM / W RAM bank 2
|
||||||
LCBANK2 = $C083 ; read twice to R/W RAM bank 2
|
ROMONLY = $C082 ; read once to R ROM / no write
|
||||||
|
;LCBANK2 = $C083 ; read twice to R/W RAM bank 2
|
||||||
LCBANK1READ = $C088 ; read once to R RAM bank 1 / no write
|
LCBANK1READ = $C088 ; read once to R RAM bank 1 / no write
|
||||||
|
LCBANK1WRITE = $C089 ; read twice to R ROM / W RAM bank 1
|
||||||
LCBANK1 = $C08B ; read twice to R/W RAM bank 1
|
LCBANK1 = $C08B ; read twice to R/W RAM bank 1
|
||||||
|
|
||||||
; ROM
|
; ROM
|
||||||
|
@ -29,3 +31,5 @@ PTR = $02
|
||||||
SRC = $04
|
SRC = $04
|
||||||
DEST = $06
|
DEST = $06
|
||||||
SAVE = $08
|
SAVE = $08
|
||||||
|
MachineStatus =$FF ; bit 7 = 1 if machine has joystick
|
||||||
|
; bit 6 = 1 if machine has 128K
|
||||||
|
|
|
@ -3,8 +3,8 @@
|
||||||
; Checks whether computer has joystick connected
|
; Checks whether computer has joystick connected
|
||||||
;
|
;
|
||||||
; in: none
|
; in: none
|
||||||
; out: C clear if joystick found
|
; out: C set if joystick found
|
||||||
; C set if no joystick found
|
; C clear if no joystick found
|
||||||
; other flags clobbered
|
; other flags clobbered
|
||||||
; A,X clobbered
|
; A,X clobbered
|
||||||
; Y preserved
|
; Y preserved
|
||||||
|
@ -13,28 +13,30 @@
|
||||||
; (c) 1989 Broderbund Software
|
; (c) 1989 Broderbund Software
|
||||||
; https://github.com/jmechner/Prince-of-Persia-Apple-II/blob/master/01%20POP%20Source/Source/GRAFIX.S#L1225
|
; https://github.com/jmechner/Prince-of-Persia-Apple-II/blob/master/01%20POP%20Source/Source/GRAFIX.S#L1225
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
|
!zone {
|
||||||
HasJoystick
|
HasJoystick
|
||||||
lda #0
|
lda #0
|
||||||
sta joyX
|
sta @joyX
|
||||||
sta joyY
|
sta @joyY
|
||||||
lda $C070 ; reset analog input timers
|
lda $C070 ; reset analog input timers
|
||||||
@loop ldx #1
|
@loop ldx #1
|
||||||
@1 lda $C064,x ; check timer input
|
@1 lda $C064,x ; check timer input
|
||||||
bpl @beat
|
bpl @beat
|
||||||
inc joyX,x ; still high, increment counter
|
inc @joyX,x ; still high, increment counter
|
||||||
@nextpdl dex
|
@nextpdl dex
|
||||||
bpl @1
|
bpl @1
|
||||||
lda $C064
|
lda $C064
|
||||||
ora $C065
|
ora $C065
|
||||||
bpl @rts ; both inputs low, we're done
|
bpl @yes ; both inputs low, we're done
|
||||||
lda joyX
|
lda @joyX
|
||||||
ora joyY
|
ora @joyY
|
||||||
bpl @loop ; do it again
|
bpl @loop ; do it again
|
||||||
sec
|
@no clc
|
||||||
+HIDE_NEXT_BYTE
|
+HIDE_NEXT_BYTE
|
||||||
@rts clc
|
@yes sec
|
||||||
rts
|
rts
|
||||||
@beat nop
|
@beat nop
|
||||||
bpl @nextpdl ; kill time
|
bpl @nextpdl ; kill time
|
||||||
joyX !byte 0
|
@joyX !byte 0
|
||||||
joyY !byte 0
|
@joyY !byte 0
|
||||||
|
}
|
||||||
|
|
141
src/memcheck.a
141
src/memcheck.a
|
@ -1,121 +1,52 @@
|
||||||
Has128KStatus =$FF ; [byte] set by Has128K
|
|
||||||
|
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
; Has128K
|
; Has128K
|
||||||
; Checks whether computer has auxiliary memory (i.e. 128K)
|
; Checks whether computer has functioning auxiliary memory (128K)
|
||||||
;
|
;
|
||||||
; in: none
|
; in: none
|
||||||
; out: zero page $FF has
|
; out: C set if 128K detected
|
||||||
; $00 = not a //e
|
; C clear if 128K not detected
|
||||||
; $20 = //e but no 80-col card
|
; all other flags and registers clobbered
|
||||||
; $40 = 80-col card but no aux mem
|
; zp $80-$9F clobbered
|
||||||
; $80 = aux mem detected (yay!)
|
; ROM in memory (not LC RAM bank)
|
||||||
; all other flags clobbered
|
|
||||||
; all registers clobbered
|
|
||||||
; zero page $1A-$1D clobbered
|
|
||||||
;
|
;
|
||||||
; original was AUX.MEM.CHECK from "Extra K"
|
; adapted from "Prince of Persia" by Jordan Mechner
|
||||||
; (c) 1986 Beagle Bros
|
; (c) 1989 Broderbund Software
|
||||||
; written by Alan Bird and Mark Simonsen, 1986-03-28
|
; https://github.com/jmechner/Prince-of-Persia-Apple-II/blob/master/01%20POP%20Source/Source/BOOT.S#L119
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
|
!zone {
|
||||||
Has128K
|
Has128K
|
||||||
php
|
sta ROMONLY ; need ROM for machine ID byte
|
||||||
sei
|
|
||||||
lda $E000 ; store values from language card
|
|
||||||
sta $1A ; (used later to determine which
|
|
||||||
lda $D000 ; RAM bank is active and reset it)
|
|
||||||
sta $1B
|
|
||||||
lda $D400
|
|
||||||
sta $1C
|
|
||||||
lda $D800
|
|
||||||
sta $1D
|
|
||||||
lda ROMIN
|
|
||||||
lda ROMIN
|
|
||||||
lda MACHINEID
|
lda MACHINEID
|
||||||
cmp #$06
|
cmp #6
|
||||||
bne @noiie
|
bne @no ; earlier than //e -> no 128K
|
||||||
lda SLOT3STATUS
|
lda SLOT3STATUS
|
||||||
bmi @no80col
|
bmi @no ; no 80-column card -> no 128K
|
||||||
lda AUXMEMSTATUS
|
ldx #@checklen
|
||||||
bmi @yesauxmem
|
- lda @checker,x
|
||||||
lda AUXZPSTATUS
|
sta $80,x
|
||||||
bmi @yesauxmem
|
dex
|
||||||
ldy #$28
|
|
||||||
- ldx @checker,Y
|
|
||||||
lda $100,Y
|
|
||||||
sta @checker,Y
|
|
||||||
txa
|
|
||||||
sta $100,Y
|
|
||||||
dey
|
|
||||||
bpl -
|
bpl -
|
||||||
jmp $100
|
jmp $80 ; check if auxmem actually works
|
||||||
@postcheck
|
|
||||||
ldy #$28
|
|
||||||
- lda @checker,Y
|
|
||||||
sta $100,Y
|
|
||||||
dey
|
|
||||||
bpl -
|
|
||||||
bcs @noauxmem
|
|
||||||
@yesauxmem
|
|
||||||
lda #$80
|
|
||||||
+HIDE_NEXT_2_BYTES
|
|
||||||
@noauxmem
|
|
||||||
lda #$40
|
|
||||||
+HIDE_NEXT_2_BYTES
|
|
||||||
@no80col
|
|
||||||
lda #$20
|
|
||||||
+HIDE_NEXT_2_BYTES
|
|
||||||
@noiie
|
|
||||||
lda #$00
|
|
||||||
sta Has128KStatus
|
|
||||||
lda $E000
|
|
||||||
cmp $1A
|
|
||||||
bne @tryRAMbank1
|
|
||||||
lda $D000
|
|
||||||
cmp $1B
|
|
||||||
bne @tryRAMbank1
|
|
||||||
lda $D400
|
|
||||||
cmp $1C
|
|
||||||
bne @tryRAMbank1
|
|
||||||
lda $D800
|
|
||||||
cmp $1D
|
|
||||||
beq @done
|
|
||||||
@tryRAMbank1
|
|
||||||
lda LCBANK1READ
|
|
||||||
lda $E000
|
|
||||||
cmp $1A
|
|
||||||
bne @tryRAMbank2
|
|
||||||
lda $D000
|
|
||||||
cmp $1B
|
|
||||||
bne @tryRAMbank2
|
|
||||||
lda $D400
|
|
||||||
cmp $1C
|
|
||||||
bne @tryRAMbank2
|
|
||||||
lda $D800
|
|
||||||
cmp $1D
|
|
||||||
beq @done
|
|
||||||
@tryRAMbank2
|
|
||||||
lda LCBANK2READ
|
|
||||||
@done
|
|
||||||
plp
|
|
||||||
lda Has128KStatus
|
|
||||||
rts
|
|
||||||
@checker
|
@checker
|
||||||
lda #$EE
|
lda #$EE
|
||||||
sta WRITEAUXMEM
|
sta WRITEAUXMEM
|
||||||
sta READAUXMEM
|
sta READAUXMEM
|
||||||
sta $800
|
sta $0C00
|
||||||
lda $C00
|
sta $0800
|
||||||
|
lda $0C00
|
||||||
cmp #$EE
|
cmp #$EE
|
||||||
bne @auxworks
|
bne @no
|
||||||
asl $C00
|
asl $0C00
|
||||||
lda $800
|
asl
|
||||||
cmp $C00
|
cmp $0C00
|
||||||
bne @auxworks
|
bne @no
|
||||||
sec
|
cmp $0800
|
||||||
|
bne @yes
|
||||||
|
@no clc
|
||||||
+HIDE_NEXT_BYTE
|
+HIDE_NEXT_BYTE
|
||||||
@auxworks
|
@yes sec
|
||||||
clc
|
@finish sta WRITEMAINMEM
|
||||||
sta WRITEMAINMEM
|
|
||||||
sta READMAINMEM
|
sta READMAINMEM
|
||||||
jmp @postcheck
|
rts
|
||||||
|
@checklen=*-@checker
|
||||||
|
}
|
||||||
|
|
|
@ -13,7 +13,7 @@ ver_02 = 1
|
||||||
;place no code before init label below.
|
;place no code before init label below.
|
||||||
|
|
||||||
;user-defined options
|
;user-defined options
|
||||||
verbose_info = 1 ;set to 1 to enable display of memory usage
|
verbose_info = 0 ;set to 1 to enable display of memory usage
|
||||||
enable_floppy = 0 ;set to 1 to enable floppy drive support
|
enable_floppy = 0 ;set to 1 to enable floppy drive support
|
||||||
poll_drive = 0 ;set to 1 to check if disk is in drive, recommended if allow_multi is enabled
|
poll_drive = 0 ;set to 1 to check if disk is in drive, recommended if allow_multi is enabled
|
||||||
override_adr = 0 ;set to 1 to require an explicit load address
|
override_adr = 0 ;set to 1 to require an explicit load address
|
||||||
|
@ -25,10 +25,10 @@ ver_02 = 1
|
||||||
;seeking with aligned_read=1 requires non-zero offset
|
;seeking with aligned_read=1 requires non-zero offset
|
||||||
allow_multi = 0 ;set to 1 to allow multiple floppies
|
allow_multi = 0 ;set to 1 to allow multiple floppies
|
||||||
check_chksum = 0 ;set to 1 to enforce checksum verification for floppies
|
check_chksum = 0 ;set to 1 to enforce checksum verification for floppies
|
||||||
allow_subdir = 0 ;set to 1 to allow opening subdirectories to access files
|
allow_subdir = 1 ;set to 1 to allow opening subdirectories to access files
|
||||||
might_exist = 0 ;set to 1 if file is not known to always exist already
|
might_exist = 0 ;set to 1 if file is not known to always exist already
|
||||||
;makes use of status to indicate success or failure
|
;makes use of status to indicate success or failure
|
||||||
allow_aux = 0 ;set to 1 to allow read/write directly to/from aux memory
|
allow_aux = 1 ;set to 1 to allow read/write directly to/from aux memory
|
||||||
;requires load_high to be set for arbitrary memory access
|
;requires load_high to be set for arbitrary memory access
|
||||||
;else driver must be running from same memory target
|
;else driver must be running from same memory target
|
||||||
;i.e. running from main if accessing main, running from aux if accessing aux
|
;i.e. running from main if accessing main, running from aux if accessing aux
|
||||||
|
@ -38,11 +38,11 @@ ver_02 = 1
|
||||||
always_trees = 0 ;set to 1 if the only file access involves tree files
|
always_trees = 0 ;set to 1 if the only file access involves tree files
|
||||||
;not compatible with allow_subdir, allow_saplings
|
;not compatible with allow_subdir, allow_saplings
|
||||||
detect_treof = 0 ;detect EOF during read of tree files
|
detect_treof = 0 ;detect EOF during read of tree files
|
||||||
allow_sparse = 0 ;enable support for reading sparse files
|
allow_sparse = 1 ;enable support for reading sparse files
|
||||||
bounds_check = 0 ;set to 1 to prevent access beyond the end of the file
|
bounds_check = 1 ;set to 1 to prevent access beyond the end of the file
|
||||||
;but limits file size to 64k-2 bytes.
|
;but limits file size to 64k-2 bytes.
|
||||||
no_interrupts= 1 ;set to 1 to disable interrupts across calls
|
no_interrupts= 0 ;set to 1 to disable interrupts across calls
|
||||||
detect_err = 1 ;set to 1 to to detect errors in no_interrupt mode
|
detect_err = 0 ;set to 1 to to detect errors in no_interrupt mode
|
||||||
swap_zp = 0 ;set to 1 to include code to preserve zpage
|
swap_zp = 0 ;set to 1 to include code to preserve zpage
|
||||||
;used only by rwts_mode
|
;used only by rwts_mode
|
||||||
rwts_mode = 0 ;set to 1 to enable emulation of DOS RWTS when running from hard disk
|
rwts_mode = 0 ;set to 1 to enable emulation of DOS RWTS when running from hard disk
|
||||||
|
@ -2102,13 +2102,11 @@ hddfoundname iny
|
||||||
!if (allow_subdir + allow_saplings + allow_trees) > 0 {
|
!if (allow_subdir + allow_saplings + allow_trees) > 0 {
|
||||||
sta hdddirbuf
|
sta hdddirbuf
|
||||||
!if fast_trees = 0 {
|
!if fast_trees = 0 {
|
||||||
sta treeblklo
|
|
||||||
} ;fast_trees
|
} ;fast_trees
|
||||||
iny
|
iny
|
||||||
lda (bloklo), y
|
lda (bloklo), y
|
||||||
sta hdddirbuf + 256
|
sta hdddirbuf + 256
|
||||||
!if fast_trees = 0 {
|
!if fast_trees = 0 {
|
||||||
sta treeblkhi
|
|
||||||
} ;fast_trees
|
} ;fast_trees
|
||||||
!if (allow_trees and always_trees) = 0 {
|
!if (allow_trees and always_trees) = 0 {
|
||||||
plp
|
plp
|
||||||
|
|
Loading…
Reference in New Issue
Block a user