Version 1.1. released. See readme.md for details.

This commit is contained in:
Dave Bernazzani 2025-04-30 06:21:26 -04:00
parent 84938112cd
commit f7b001c16a
7 changed files with 40 additions and 35 deletions

View File

@ -15,7 +15,7 @@ include $(DEVKITARM)/ds_rules
export TARGET := SpeccySE
export TOPDIR := $(CURDIR)
export VERSION := 1.0
export VERSION := 1.1
ICON := -b $(CURDIR)/logo.bmp "SpeccySE $(VERSION);wavemotion-dave;https://github.com/wavemotion-dave/SpeccySE"

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

View File

@ -1100,13 +1100,13 @@ u8 speccyTapePosition(void)
}
// ----------------------------------------------------------------------------
// Chuckie-Style d-pad keeps moving in the last known direction for a few more
// Slide-n-Glide D-pad keeps moving in the last known direction for a few more
// frames to help make those hairpin turns up and off ladders much easier...
// ----------------------------------------------------------------------------
u8 chuckie_key_up = 0;
u8 chuckie_key_down = 0;
u8 chuckie_key_left = 0;
u8 chuckie_key_right = 0;
u8 slide_n_glide_key_up = 0;
u8 slide_n_glide_key_down = 0;
u8 slide_n_glide_key_left = 0;
u8 slide_n_glide_key_right = 0;
// ------------------------------------------------------------------------
// The main emulation loop is here... call into the Z80 and render frame
@ -1380,50 +1380,50 @@ void SpeccySE_main(void)
// TODO: add diagonal dpad support... not sure how often this is needed
}
if (myConfig.dpad == DPAD_CHUCKIE) // CHUCKIE-EGG Style... hold left/right or up/down for a few frames
if (myConfig.dpad == DPAD_SLIDE_N_GLIDE) // CHUCKIE-EGG Style... hold left/right or up/down for a few frames
{
if (nds_key & KEY_UP)
{
chuckie_key_up = 12;
chuckie_key_down = 0;
slide_n_glide_key_up = 12;
slide_n_glide_key_down = 0;
}
if (nds_key & KEY_DOWN)
{
chuckie_key_down = 12;
chuckie_key_up = 0;
slide_n_glide_key_down = 12;
slide_n_glide_key_up = 0;
}
if (nds_key & KEY_LEFT)
{
chuckie_key_left = 12;
chuckie_key_right = 0;
slide_n_glide_key_left = 12;
slide_n_glide_key_right = 0;
}
if (nds_key & KEY_RIGHT)
{
chuckie_key_right = 12;
chuckie_key_left = 0;
slide_n_glide_key_right = 12;
slide_n_glide_key_left = 0;
}
if (chuckie_key_up)
if (slide_n_glide_key_up)
{
chuckie_key_up--;
slide_n_glide_key_up--;
nds_key |= KEY_UP;
}
if (chuckie_key_down)
if (slide_n_glide_key_down)
{
chuckie_key_down--;
slide_n_glide_key_down--;
nds_key |= KEY_DOWN;
}
if (chuckie_key_left)
if (slide_n_glide_key_left)
{
chuckie_key_left--;
slide_n_glide_key_left--;
nds_key |= KEY_LEFT;
}
if (chuckie_key_right)
if (slide_n_glide_key_right)
{
chuckie_key_right--;
slide_n_glide_key_right--;
nds_key |= KEY_RIGHT;
}
}
@ -1458,10 +1458,10 @@ void SpeccySE_main(void)
}
else // No NDS keys pressed...
{
if (chuckie_key_up) chuckie_key_up--;
if (chuckie_key_down) chuckie_key_down--;
if (chuckie_key_left) chuckie_key_left--;
if (chuckie_key_right) chuckie_key_right--;
if (slide_n_glide_key_up) slide_n_glide_key_up--;
if (slide_n_glide_key_down) slide_n_glide_key_down--;
if (slide_n_glide_key_left) slide_n_glide_key_left--;
if (slide_n_glide_key_right) slide_n_glide_key_right--;
last_mapped_key = 0;
}

View File

@ -908,7 +908,7 @@ const struct options_t Option_Table[2][20] =
{"TAPE SPEED", {"NORMAL", "ACCELERATED"}, &myConfig.tapeSpeed, 2},
{"GAME SPEED", {"100%", "110%", "120%", "90%", "80%"}, &myConfig.gameSpeed, 5},
{"BUS CONTEND", {"NORMAL", "LIGHT", "HEAVY"}, &myConfig.contention, 3},
{"NDS D-PAD", {"NORMAL", "DIAGONALS", "CHUCKIE"}, &myConfig.dpad, 3},
{"NDS D-PAD", {"NORMAL", "DIAGONALS", "SLIDE-N-GLIDE"}, &myConfig.dpad, 3},
{NULL, {"", ""}, NULL, 1},
},

View File

@ -31,7 +31,7 @@
#define DPAD_NORMAL 0
#define DPAD_DIAGONALS 1
#define DPAD_CHUCKIE 2
#define DPAD_SLIDE_N_GLIDE 2
extern char last_path[MAX_FILENAME_LEN];
extern char last_file[MAX_FILENAME_LEN];

View File

@ -19,7 +19,7 @@ Features :
* Kempston and Sinclair joystick support
* Fully configurable keys for the 12 NDS keys to any combination of joystick/keyboard
* Save and Restore states so you can pick up where you left off
* Chuckie-Egg style Joystick configuration to make climing ladders more forgiving (try it - you'll like it!)
* Slide-n-Glide style Joystick configuration to make climbing ladders in games like Chuckie-Egg more forgiving (try it - you'll like it!)
* High Score saving for 10 scores with initials, date/time.
* Solid Z80 core that passes the ZEXDOC test suite (covering everything but not undocumented flags).
* Minimal design asthetic - pick game, play game. Runs unpached from your SD card via TWL++ or similar.
@ -130,16 +130,15 @@ the 'REDEFINE KEYS' menu, you can press the NDS 'X' button to toggle between
a number of commonly used preset keys for various ZX games (QAOP, ZXM, etc).
By default, the configuration for any game is set to use the Kempston joystick.
Also be aware that there is a D-PAD option that can be set to 'CHUCKIE' for
games that are often unforgiving using a joystick. If you've ever played
Also be aware that there is a D-PAD option that can be set to 'SLIDE-N-GLIDE'
for games that are often unforgiving using a joystick. If you've ever played
Chuckie Egg on a keybaord you know that it's pinpoint percise... but with
a joystick, it can be a bit frustrating trying to find the exact spot to
transition from Left/Right to Up/Down to climb a ladder. The 'CHUCKIE' mode
transition from Left/Right to Up/Down to climb a ladder. This new joy mode
will hold the L/R or U/D for a fraction of a frame while the transition
is made. This allows for buttery smooth (relatively speaking) transitions
on the ladders. It's likely other games will benefit from this mode - but
Chuckie Egg is the reason I put it into the emulator and so that's the
name it gets.
Chuckie Egg is the reason I put it into the emulator.
Game Options / Global Options :
-----------------------
@ -260,6 +259,12 @@ you're likely going to want ZXDS.
Version History :
-----------------------
Version 1.1 - 30-Apr-2025 by wavemotion-dave
* Double buffer video on DSi/XL/LL for reduced tearing
* Rebranded 'Chuckie Egg-Style' joystick handling to 'Slide-n-Glide'
* Minor cleanups as time permitted
Version 1.0 - 14-Apr-2025 by wavemotion-dave
* First official release of Speccy-SE!