mirror of
https://github.com/wavemotion-dave/A7800DS.git
synced 2025-04-02 10:42:14 -04:00
Compare commits
4 commits
Author | SHA1 | Date | |
---|---|---|---|
|
d57a21997a | ||
|
849c18eb2b | ||
|
c1d61673a7 | ||
|
ec31048360 |
6 changed files with 16 additions and 29 deletions
BIN
A7800DS.nds
BIN
A7800DS.nds
Binary file not shown.
19
README.md
19
README.md
|
@ -23,7 +23,7 @@ Features :
|
|||
All popular bank-switching schemes are supported including an extra 16K of RAM at 4000h.
|
||||
Pokey support at 4000h, 800h and 450h - change this in Configuration if it's not auto-detected.
|
||||
|
||||
The new Banksets scheme is fully supported - this new banking/memory handling is designed
|
||||
The Banksets scheme is fully supported - this new banking/memory handling is designed
|
||||
for homebrew authors to provide increased ROM density and improved packing and access of
|
||||
graphics data vs code. This allows for games that would have been difficult or impossible
|
||||
without the scheme. See http://7800.8bitdev.org/index.php/Bankset_Bankswitching for more details.
|
||||
|
@ -31,6 +31,9 @@ Features :
|
|||
Add highscore.rom for 7800 High Score saving. This can be in /roms/bios, /data/bios
|
||||
or in the same directory as the emulator. It's worth the effort to track down the highscore.rom file!
|
||||
|
||||
If you want to use a real Atari 7800 BIOS, find yourself the 4K version and place it
|
||||
into the same directory as mentioned in the paragraph above.
|
||||
|
||||
Copyright :
|
||||
----------
|
||||
A7800DS is Copyright 2021-2025 by Dave Bernazzani (wavemotion-dave).
|
||||
|
@ -108,11 +111,10 @@ Controls :
|
|||
that utilize it. This allows all of the DS buttons to map into the game - exactly
|
||||
as labeled (D-Pad plus ABXY, Left Shoulder, Right Shoulder and Start, Select).
|
||||
|
||||
High Score Saving works if you have highscore.rom (exact name and case) in your
|
||||
roms directory where you load your games... also, you MUST press the HSC button
|
||||
if you want to snap the Saved Scores out to the flash card. It's not something
|
||||
I want to do as the game runs... so you must do it... the high scores will also
|
||||
auto-save if you quit the emulator or select a new game.
|
||||
High Score Saving works if you have highscore.rom (exact name) in your
|
||||
roms directory where you load your games... The .hsc backing file will be written
|
||||
automatically as the game runs. Only games programmed to use the highscore cart
|
||||
will save scores.
|
||||
|
||||
Configuration :
|
||||
----------
|
||||
|
@ -136,8 +138,6 @@ The following schemes are supported:
|
|||
Frame Skipping can be OFF (show all frames), Moderate (Show 3/4 frames) or Agressive (only show 1/2 frames). The latter is
|
||||
only really needed for the DS-Lite/Phat where the faster DSi CPU isn't available.
|
||||
|
||||
Don't touch the DMA Cycle Adjustment unless you understand it... and most people don't - sometimes including the developer :)
|
||||
|
||||
Press START to save off your configuration - if you made changes you should re-load the game to ensure all settings are applied.
|
||||
|
||||
Of Mice, Men and Screen Resolutions :
|
||||
|
@ -172,7 +172,8 @@ this while you are playing - usually when you lose a life you can tap the X butt
|
|||
more useable scanlines for actual gameplay. Think of this like you're at the arcade and you have to glance up to see your
|
||||
score when focused on the field of play. It takes a little getting used to but this mechanism really helps map the more complicated
|
||||
game graphics onto the small sceren. Of course youc an always scale the screen down to it's totally visible - but there will be
|
||||
some loss of scanline information. Experiment and determine what works best for you.
|
||||
some loss of scanline information. Experiment and determine what works best for you. Many of the popular games already have
|
||||
the screen set to perfectly pan up/down to bring in the score/status while leaving the playfield as close to 1:1 as possible.
|
||||
|
||||
And remember - once you get your screen settings the way you want, be sure to go into the GEAR icon and hit START to save out
|
||||
your current configuration (which includes your screen offset/scaling tweaks on a per-game basis).
|
||||
|
|
|
@ -34,9 +34,9 @@
|
|||
// ---------------------------
|
||||
// Config handling...
|
||||
// ---------------------------
|
||||
#define CONFIG_VER 0x000A
|
||||
#define CONFIG_VER 0x000B
|
||||
|
||||
#define MAX_CONFIGS 700
|
||||
#define MAX_CONFIGS 640
|
||||
|
||||
struct AllConfig_t
|
||||
{
|
||||
|
|
|
@ -43,6 +43,8 @@ typedef struct {
|
|||
s16 xScale;
|
||||
s16 yScale;
|
||||
u8 frameSkip;
|
||||
u8 spare0;
|
||||
u8 spare1;
|
||||
u8 hasHeader;
|
||||
u8 palette;
|
||||
u8 xJiggle;
|
||||
|
@ -53,6 +55,8 @@ typedef struct {
|
|||
u8 spare3;
|
||||
u8 spare4;
|
||||
u8 spare5;
|
||||
u8 spare6;
|
||||
u8 spare7;
|
||||
} Database_Entry;
|
||||
|
||||
|
||||
|
|
|
@ -978,22 +978,6 @@ uint sally_ExecuteNMI( ) {
|
|||
return 7;
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// Execute IRQ
|
||||
// ----------------------------------------------------------------------------
|
||||
uint sally_ExecuteIRQ( ) {
|
||||
if(!(sally_p & _fI)) {
|
||||
sally_Push(sally_pc.b.h);
|
||||
sally_Push(sally_pc.b.l);
|
||||
sally_p &= ~_fB;
|
||||
sally_Push(sally_p);
|
||||
sally_p |= _fI;
|
||||
sally_pc.b.l = memory_ram[SALLY_IRQ.L];
|
||||
sally_pc.b.h = memory_ram[SALLY_IRQ.H];
|
||||
}
|
||||
return 7;
|
||||
}
|
||||
|
||||
extern uint prosystem_cycles;
|
||||
|
||||
ITCM_CODE void sally_Execute(unsigned int cycles )
|
||||
|
|
|
@ -46,7 +46,6 @@ extern void sally_Reset( );
|
|||
extern uint sally_ExecuteInstruction( );
|
||||
extern uint sally_ExecuteRES( );
|
||||
extern uint sally_ExecuteNMI( );
|
||||
extern uint sally_ExecuteIRQ( );
|
||||
extern byte sally_a;
|
||||
extern byte sally_x;
|
||||
extern byte sally_y;
|
||||
|
@ -55,6 +54,5 @@ extern uint sally_s;
|
|||
extern bool wsync_happened;
|
||||
|
||||
extern void sally_Execute(unsigned int cycles );
|
||||
extern void sally_Execute_Fast(unsigned int cycles );
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Add table
Reference in a new issue