fix Windows build

This commit is contained in:
Peter Ferrie 2021-10-13 22:43:50 -07:00
parent 6bf7a1341a
commit 8e8945c8a0
18 changed files with 25 additions and 34 deletions

View File

@ -1,20 +1,15 @@
@echo off
setlocal enabledelayedexpansion
1>nul copy /y nul %2
set f=0
for /f "tokens=*" %%a in (%1) do (
call :x %%a %2
set f=0
call :x %%a
if !f!==2 goto:eof
if !f!==0 1>nul copy /b /y %2+build\FX\%%a %2
)
goto:eof
:x
call :check %1
if !f!==2 goto:eof
if !f!==0 1>nul copy /b /y %2+build\FX\%1 %2
)
goto:eof
:check
set a=%1
if not x%a:#=%==x%a% set/a f=1
if not x%a:[=%==x%a% set/a f=2

View File

@ -34,6 +34,7 @@ while (!b.atendofstream)
}
entries.sort()
a.createtextfile("build\\games.lst").write(entries.toString().replace(/,/g, "\n"))
y = "build\\PRELAUNCH\\"
pre_off = a.getfile(y + "STANDARD").size
osize = pre_off

View File

@ -1,4 +1,4 @@
@echo off
1>nul copy /y %1\STANDARD %2
rem requires sorted file-system
for %%a in (%1\*) do if %%a neq STANDARD 1>nul copy /b /y %2+%%a %2
setlocal enabledelayedexpansion
1>nul copy /y build\PRELAUNCH\STANDARD %1
for /f "tokens=*" %%a in (build\games.lst) do 1>nul copy /b /y %1+build\PRELAUNCH\%%a %1

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -370,7 +370,8 @@ CopyDevs
lda hddopendir+1 ; save current directory as 'root'
ldy hddopendir+3
jsr SwitchToBank1
+ST16 gRootDirectory
sta gRootDirectory+1
sty gRootDirectory+3
jsr LoadFile ; load preferences file into $8000
!word kRootDirectory

View File

@ -7,7 +7,7 @@
;
; LC RAM BANK 1
; D000..E789 - persistent data structures (gGlobalPrefsStore, gGamesListStore)
; E956..FFF1 - main program code
; E962..FFF1 - main program code
; FFF2..FFF9 - API functions and global constants available for main program
; code, prelaunchers, transition effects, &c.
; (Wait/UnwaitForVBL, MockingboardStuff, MachineStatus)
@ -16,8 +16,8 @@
; LC RAM BANK 2
; D000..D3FF - ProRWTS data
; D400..D66F - ProRWTS code
; D670..DB93 - HGR font code & ProRWTS glue code
; DB94..DBA3 - backup of stack (during gameplay and self-running demos)
; D670..DB91 - HGR font code & ProRWTS glue code
; DB92..DBA1 - backup of stack (during gameplay and self-running demos)
; ...unused...
; DBB4..DBFF - (de)acceleration function
; DC00..DFFF - HGR font data
@ -148,7 +148,7 @@ CHEATS_ENABLED = %00001000
iCurBlockLo = $D401
iCurBlockHi = $D403
iProDOS_enter = $D670
LoadFileDirect = $DAF6
LoadFileDirect = $DAF4
launchpatch = $D60E
iAddToPath = $FE67
itraverse = $D8D8

View File

@ -211,6 +211,3 @@ LoadIndexedFile
@address !word $DFDF ; SMC
@size !word $DFDF ; SMC
!word $ffff
gRootDirectory
!word $FDFD

View File

@ -69,12 +69,6 @@
ldy .ptr+1
}
; load a 16-bit immediate value into A (low) and Y (high)
!macro LDI16 .ptr {
lda #<.ptr
ldy #>.ptr+1
}
; store a 16-bit value from A (low) and Y (high)
!macro ST16 .ptr {
sta .ptr

View File

@ -217,7 +217,7 @@ pref_set
+LDADDR kGlobalPrefsFilename ; write prefs buffer to file on disk
jsr SetPath
+LD16 kGlobalPrefsBuffer
;; +LDADDR kGlobalPrefsBuffer
; /!\ execution falls through here to glue.prorwts/SaveSmallFile
;------------------------------------------------------------------------------
; SaveSmallFile
@ -233,7 +233,7 @@ pref_set
; all registers clobbered
;------------------------------------------------------------------------------
SaveSmallFile
+ST16 ldrlo ; set data buffer address for ProRWTS2
;; +ST16 ldrlo ; set data buffer address for ProRWTS2
jsr SwitchToBank2
jsr SaveSmallFileInternal
jmp SwitchToBank1

View File

@ -405,7 +405,8 @@ resetval=$f0
}
}
traverse
+LD16 gRootDirectory
gRootDirectory
+LDADDR 0 ; SMC
sta (reloc + unrhddblocklo - unrelochdd) + 1
sty (reloc + unrhddblockhi - unrelochdd) + 1
sta @myreadblock+1

View File

@ -100,7 +100,7 @@ MiniAttractMode
beq ATTRTS ; we've run through all modules, so exit to caller
+
@MiniAttractIndex
+LDI16 0 ; SMC
+LDADDR 0 ; SMC
+ST16 WINDEX
+LDADDR -
jsr okvs_nth ; get the next module on the list

View File

@ -49,8 +49,8 @@ call :compress
cscript /nologo bin\rsync.js "res\PREFS.CONF" "build\" >>build\log
cscript /nologo bin\padto.js 512 build\PREFS.CONF
cscript /nologo bin\buildokvs.js "res\ATTRACT.CONF" "build\ATTRACT.IDX" >>build\log
call bin\buildfxful.bat res\FX.CONF "build\FX.ALL" >>build\log
call bin\buildfxful.bat res\DFX.CONF "build\DFX.ALL" >>build\log
call bin\buildfxful.bat res\FX.CONF build\FX.ALL >>build\log
call bin\buildfxful.bat res\DFX.CONF build\DFX.ALL >>build\log
cscript /nologo bin\buildfx.js "res\FX.CONF" "build\fx.inc" "build\FX.IDX" >>build\log
cscript /nologo bin\buildfx.js "res\DFX.CONF" "build\dfx.inc" "build\DFX.IDX" >>build\log
cscript /nologo bin\buildhelp.js "build\GAMEHELP.ALL" "build\help.inc" "build\GAMEHELP.IDX" >>build\log
@ -60,8 +60,8 @@ cscript /nologo bin\buildss.js "build\SS" "build\ss.inc" "build\SLIDESHOW.IDX" >
for %%q in (res\ATTRACT\*) do cscript /nologo bin\buildokvs.js "%%q" "build\ATTRACT\%%~nxq" >>build\log
call bin\buildssall.bat build\ATTRACT build\MINIATTRACT.ALL>>build\log
cscript /nologo bin\buildss.js "build\ATTRACT" "build\attract.inc" "build\MINIATTRACT.IDX" >>build\log
call bin\buildpreall.bat build\PRELAUNCH build\PRELAUNCH.ALL>>build\log
cscript /nologo bin\buildpre.js "build\PRELAUNCH" "build\prelaunch.inc" "build\PRELAUNCH.IDX" >>build\log
call bin\buildpreall.bat build\PRELAUNCH.ALL>>build\log
%CADIUS% ADDFILE "build\%DISK%" "/%VOLUME%/" "res\TITLE" >>build\log
%CADIUS% ADDFILE "build\%DISK%" "/%VOLUME%/" "res\COVER" >>build\log
%CADIUS% ADDFILE "build\%DISK%" "/%VOLUME%/" "res\HELP" >>build\log
@ -109,12 +109,14 @@ for %%q in (res\dsk\*.po) do %CADIUS% EXTRACTVOLUME "%%q" build\X\ >>build\log
1>nul 2>nul del /s build\X\.DS_Store build\X\PRODOS build\X\LOADER.SYSTEM
%CADIUS% CREATEFOLDER "build\%DISK%" "/%VOLUME%/X/" >>build\log
%CADIUS% ADDFOLDER "build\%DISK%" "/%VOLUME%/X" "build\X" >>build\log
%CADIUS% CREATEFOLDER "build\%DISK%" "/%VOLUME%/PRELAUNCH/" >>build\log
for %%q in (build\PRELAUNCH\*.MB) do %CADIUS% ADDFILE "build\%DISK%" "/%VOLUME%/PRELAUNCH" "%%q" >>build\log
cscript /nologo bin\changebootloader.js "build\%DISK%" build\proboothd
goto :EOF
)
if "%1" equ "demo" (
for %%q in (src\demo\*) do %acme% %1
for %%q in (src\demo\*) do %acme% %%q
goto :EOF
)