From 879030f4ff5b9f0e8f2dcd3e323c1892f8659240 Mon Sep 17 00:00:00 2001 From: Jeremy Rand Date: Wed, 29 Jan 2020 00:31:19 -0500 Subject: [PATCH] Use uppercase for the file names because that works better with Total Replay. Fix a problem where HISCR is left on after switching to mixed mode. Fix bugs with formatting of the text when saving the game, prompting for the next level and notifying that the end of the game has been reached in mixed text mode. --- .../UserInterfaceState.xcuserstate | Bin 47384 -> 50077 bytes a2bejwld/dbllores.s | 26 +++++++----------- a2bejwld/game.c | 2 +- a2bejwld/ui.c | 14 ++++++---- 4 files changed, 19 insertions(+), 23 deletions(-) diff --git a/a2bejwld.xcodeproj/project.xcworkspace/xcuserdata/jrand.xcuserdatad/UserInterfaceState.xcuserstate b/a2bejwld.xcodeproj/project.xcworkspace/xcuserdata/jrand.xcuserdatad/UserInterfaceState.xcuserstate index 3ab0bafcd3ed279f1aff7f3412eb09c7603e3708..bc29721648a9c88800d778e414a5aa3f2a52e037 100644 GIT binary patch delta 22295 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 T@0j8`ckZy)xDNksd5`}9Rh+T# delta 20655 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 diff --git a/a2bejwld/dbllores.s b/a2bejwld/dbllores.s index 5d6e2fe..22cb6ca 100644 --- a/a2bejwld/dbllores.s +++ b/a2bejwld/dbllores.s @@ -91,22 +91,8 @@ gemmask := $88 .proc _mixedTextMode - ; Set the text window top to line 20 - lda #20 - sta WNDTOP - - ; Move the Y position of the cursor to line 20 - sta CV - bit $C082 - jsr $FC24 ; Generate text base address - bit $C080 - - ; And the X position of the cursor to column 0 - lda #0 - sta CH - lda MIXSET - sta LOWSCR + sta HISCR ldx #40 lda #$a0 @L1: @@ -118,7 +104,7 @@ gemmask := $88 cpx #0 bne @L1 - sta HISCR + sta LOWSCR ldx #40 @L2: dex @@ -131,10 +117,18 @@ gemmask := $88 lda #0 sta WNDLFT + sta CH + lda #80 sta WNDWDTH + lda #20 sta WNDTOP + sta CV + bit $C082 + jsr $FC24 ; Generate text base address + bit $C080 + lda #24 sta WNDBTM diff --git a/a2bejwld/game.c b/a2bejwld/game.c index 410837c..aa21006 100644 --- a/a2bejwld/game.c +++ b/a2bejwld/game.c @@ -33,7 +33,7 @@ #define GEM_TYPE_AT_SQUARE(square) gGameState.squareStates[square].gemType #define GEM_STARRED_AT_SQUARE(square) gGameState.squareStates[square].isStarred -#define SAVE_GAME_FILE "a2bejwld.game" +#define SAVE_GAME_FILE "A2BEJWLD.GAME" // Typedefs diff --git a/a2bejwld/ui.c b/a2bejwld/ui.c index cbdaa92..7b97abf 100644 --- a/a2bejwld/ui.c +++ b/a2bejwld/ui.c @@ -25,8 +25,8 @@ // Defines -#define SAVE_OPTIONS_FILE "a2bejwld.opts" -#define BASE_VERSION "v2.1" +#define SAVE_OPTIONS_FILE "A2BEJWLD.OPTS" +#define BASE_VERSION "v2.2a1" #ifdef TOTAL_REPLAY_BUILD #define VERSION BASE_VERSION ".tr" @@ -635,6 +635,7 @@ static void endGame(void) case 'y': case 'Y': replaceCursor(ch); + printString("\n"); return; case 'n': @@ -672,10 +673,11 @@ static void refreshLevel(tLevel level) mixedTextMode(); speakLevelComplete(); - printString(" Completed level "); + printString("\n" + " Completed level "); printInteger(level); printString("!!\n" - " Press space to continue to the next level..."); + " Press space to continue to the next level..."); while (waiting) { switch (cgetc()) { @@ -689,6 +691,7 @@ static void refreshLevel(tLevel level) } } + printString("\n"); showAndClearDblLoRes(); speakGetReady(); } @@ -904,8 +907,7 @@ static bool pollKeyboard(void) if (gShouldSave) { videomode(0x12); mixedTextMode(); - gotoxy(0, 0); - printString("Saving your game so you can continue\n later..."); + printString("\nSaving your game so you can continue\n later..."); saveGame(); } quitGame();