Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

SpeccyDS: Difference between revisions

From GameBrew
(Created page with "{{Infobox homebrew | title = SpeccyDS | image = File:Speccyds.jpg | type = | version = 0.3 | licence = Mixed | author = craigt | website ...")
 
No edit summary
Line 18: Line 18:


==User guide==
==User guide==
===Top Screen===
===Basics===
This screen displays the main Spectrum display. Borders are not currently displayed.
'''Top Screen:'''
This screen displays the main Spectrum display. Borders are not currently displayed.


===Touch Screen===
'''Touch Screen:'''
This screen will change depending on the current operation.  The screen will display one of the following:
This screen will change depending on the current operation.  The screen will display one of the following:


===Keyboard===
'''Keyboard:'''
The keyboard image displayed is dependant on the current setting selected on the Options screen.
The keyboard image displayed is dependant on the current setting selected on the Options screen.
 
The keyboard can be used in the same way as a normal Spectrum 48K spectrum. However, due to the nature of the touch screen, only one key can be pressed at once.
The keyboard can be used in the same way as a normal Spectrum 48K spectrum. However, due to the nature of the touch screen, only one key can be pressed at once.
The Caps Shift and Symbol Shift keys are "sticky". If selected, they will stay depressed until they are selected again.
 
As on a Spectrum 48K, delete is located on the shifted 0 key.
The Caps Shift and Symbol Shift keys are 'sticky'. If selected, they will stay depressed until they are selected again.
The Reset button performs a hard reset of the Spectrum.
 
As on a Spectrum 48K, delete is located on the shifted 0 key.
 
The ‘Reset’ button performs a hard reset of the Spectrum.


[[File:Speccyds2.jpg]]
[[File:Speccyds2.jpg]]


===Load===
===Save/Load===
This screen is displayed after selecting the 'Load' button on the keyboard screen.  The current folder ('/' by default) is displayed, followed by a list of folders and Spectrum snapshot files (extension .SNA and .Z80) that are contained in the current folder on the homebrew media.  All other files are hidden. Only .SNA and .Z80 snapshot files are supported at this time.
'''Load:'''
This screen is displayed after selecting the Load button on the keyboard screen.  
* The current folder (/ by default) is displayed, followed by a list of folders and Spectrum snapshot files (extension .SNA and .Z80) that are contained in the current folder on the homebrew media.  
* All other files are hidden. Only .SNA and .Z80 snapshot files are supported at this time.
*  If you are having problems finding snapshot files, it is possible to convert other spectrum file types to snapshots using any of the many Windows Spectrum emulators that are available.


If you are having problems finding snapshot files, it is possible to convert other spectrum file types to snapshots using any of the many Windows Spectrum emulators that are available.
'''Quick Load:'''
*  Selecting the Q to the right of the Load button will perform a quick load.
*  This will load the last .Z80 file saved using the Quick Save option.


The file list can be scrolled by using the up, down, page up and page down buttons to the right of the file list display or by using up and down on the d-pad.
'''Save:'''
*  This screen is displayed after selecting the Save button on the keyboard screen.
*  Entering a new filename using the touch screen keyboard and pressing Save will save the snapshot.
*  Snapshots are saved in standard .Z80 format and are compatible with other Spectrum emulators. 
*  A .Z80 extension is added to the saved file if one is not already specified.


Selecting a folder using the touch screen or ‘A’ will enter the folderSelecting a snapshot file will load the file into memory, return to the keyboard screen and continue the emulation.
'''Quick Save:'''
Selecting the Q to the right of the Save button will perform a quick save. 
*  This will perform a save to the pre-defined filename SpeccyDS_QuickSave.Z80.
* This file will be loaded using the Quick Load function.


Selecting the ‘Exit’ button or pressing ‘B’ will exit the screen.
'''Navigate through file list:'''
*  The file list can be scrolled by using the up, down, page up and page down buttons to the right of the file list display or by using up and down on the D-Pad.
*  Selecting a folder using the touch screen or A will enter the folder. Selecting a snapshot file will load the file into memory, return to the keyboard screen and continue the emulation.
Selecting the Exit button or pressing B will exit the screen.


===Quick Load===
Selecting the 'Q' to the right of the 'Load' button will perform a quick load.  This will load the last .Z80 file saved using the Quick Save option
===Save===
This screen is displayed after selecting the ‘Save’ button on the keyboard screen.
Entering a new filename using the touch screen keyboard and pressing ‘Save’ will save the snapshot.
Snapshots are saved in standard .Z80 format and are compatible with other Spectrum emulators.  A .Z80 extension is added to the saved file if one is not already specified.
===Quick Save===
Selecting the 'Q' to the right of the 'Save' button will perform a quick save.  This will perform a save to the pre-defined filename 'SpeccyDS_QuickSave.Z80'.  This file will be loaded using the Quick Load function.
 
===Settings===
===Settings===
This screen is displayed after selecting the 'Settings' button on the keyboard screen.  Selecting Exit will save the current settings and exit the screen.  The current settings are saved in the file 'SpeccyDS.cfg', and are loaded when SpeccyDS restarts.
'''Settings screen:'''
 
This screen is displayed after selecting the Settings button on the keyboard screen.  
===Controls===
* Selecting Exit will save the current settings and exit the screen.  
Kempston, Cursor, Sinclair 1 and Sinclair 2 joystick assignments can be used by selecting the relevant button.  Selecting the Define button allows you to assign a keyboard key to each button on the Nintendo DS.  These defined keys are used when the Keyboard option is selected.
* The current settings are saved in the file SpeccyDS.cfg, and are loaded when SpeccyDS restarts.
 
===Define===
This screen allows you to assign a keyboard key to each button on the Nintendo DS. 
 
To assign a key, press the button you want to define or select it from the touch screen.  Then select the key from the keyboard that should be represented by that button.


The Spectrum keyboard displayed is dependant on the current 'Keyboard Gfx' settingTherefore, you can assign buttons to normally inaccessible keys (such as the cursors) by selecting the Spectrum +2 keyboard.
'''Controls:'''
*  Kempston, Cursor, Sinclair 1 and Sinclair 2 joystick assignments can be used by selecting the relevant button.  
* Selecting the Define button allows you to assign a keyboard key to each button on the Nintendo DS.  These defined keys are used when the Keyboard option is selected.


The 'Exit' button saves the current assignments and returns to the 'Settings' screen.
'''Define:'''
*  This screen allows you to assign a keyboard key to each button on the Nintendo DS. 
*  To assign a key, press the button you want to define or select it from the touch screen. Then select the key from the keyboard that should be represented by that button.
*  The Spectrum keyboard displayed is dependant on the current Keyboard Gfx setting. Therefore, you can assign buttons to normally inaccessible keys (such as the cursors) by selecting the Spectrum +2 keyboard.
The Exit button saves the current assignments and returns to the Settings screen.


===Keyboard Gfx===
'''Keyboard Gfx:'''
This option defines the keyboard displayed on the main screen.  Spectrum 48K and +2 keyboards are currently available.
This option defines the keyboard displayed on the main screen.  
* Spectrum 48K and +2 keyboards are currently available.


===Border Size===
'''Border Size:'''
This option controls the size of the Spectrum border.
This option controls the size of the Spectrum border.


==Compatibility==
==Compatibility==
Line 88: Line 90:
Currently, only the 48K Spectrum is emulated.
Currently, only the 48K Spectrum is emulated.


Only memory snapshot files are supported (.SNA and .Z80). Tape images (.TAP, .TZX, .PZX etc) are currently not supported.
Only memory snapshot files are supported (.SNA and .Z80). Tape images (.TAP, .TZX, .PZX etc) are currently not supported.


Even though compatibility is now very good, there will be software that does not run correctly under emulation.  Please report any compatibility problems on the 'Compatibility' page on my blog.
Even though compatibility is now very good, there will be software that does not run correctly under emulation.


==Changelog==
==Changelog==
'''0.3 26/08/2007'''
'''0.3 26/08/2007'''
*Complete re-write of the GUI.
* Complete re-write of the GUI.
*Improved the touch screen accuracy on some Nintendo DS systems.
* Improved the touch screen accuracy on some Nintendo DS systems.
*Added Quick Save and Quick Load functionality
* Added Quick Save and Quick Load functionality
*Added two new keyboard images.  A Save keyboard and a Spectrum +2 keyboard.
* Added two new keyboard images.  A Save keyboard and a Spectrum +2 keyboard.
*Added a new global settings screen to replace the old Controls screen.
* Added a new global settings screen to replace the old Controls screen.
*Added re-definable keyboard controls.
* Added re-definable keyboard controls.
*Added border size control.
* Added border size control.
*Removed the maximim file limit on the Load screen.  There is now no fixed limit.
* Removed the maximim file limit on the Load screen.  There is now no fixed limit.
*Implemented several Z80 undocumented features, fixing the crash in Ghosts 'n' Goblins.
* Implemented several Z80 undocumented features, fixing the crash in Ghosts 'n' Goblins.
*Fixed the flags on the Z80 CPI command, fixing the odd behaviour in Scrabble.
* Fixed the flags on the Z80 CPI command, fixing the odd behaviour in Scrabble.


'''0.2a 05/02/2006'''
'''0.2a 05/02/2006'''
*Upgraded to libfat, which inludes the DLDI driver.
* Upgraded to libfat, which inludes the DLDI driver.
*Fixed .z80 loading routine.  More .Z80 snapshots will now be accepted.
* Fixed .z80 loading routine.  More .Z80 snapshots will now be accepted.
*Fixed flag behaviour in DAA instruction to fix problems in Head over Heels.
* Fixed flag behaviour in DAA instruction to fix problems in Head over Heels.
*Fixed HALT instruction (again!) to fix crash in Starquake.
* Fixed HALT instruction (again!) to fix crash in Starquake.
*Implemented a few undocumented instructions.
* Implemented a few undocumented instructions.
*Optomised display routines.
* Optomised display routines.
*Hooked up X and Y buttons.
* Hooked up X and Y buttons.
*Corrected Sinclair 1 and 2 joystick assignments.
* Corrected Sinclair 1 and 2 joystick assignments.
*Added border emulation (currently disabled).
* Added border emulation (currently disabled).


'''0.2 19/11/2006'''
'''0.2 19/11/2006'''
*Fixed ARM7/ARM9 synchronisation to prevent sound corruption.
* Fixed ARM7/ARM9 synchronisation to prevent sound corruption.
*Altered ADD IX,SP and ADD IY,SP instructions to fix crash in Bubble Bobble.
* Altered ADD IX,SP and ADD IY,SP instructions to fix crash in Bubble Bobble.
*Altered ROM protection to fix crashes in Megabucks and others.  
* Altered ROM protection to fix crashes in Megabucks and others.  
*Altered HALT instruction to fix crashes in Chaos, Critical Mass and others.
* Altered HALT instruction to fix crashes in Chaos, Critical Mass and others.
*Corrected S flag behaviour in BIT instructions to fix Sabre Wulf.
* Corrected S flag behaviour in BIT instructions to fix Sabre Wulf.
*Added button support to the file browser. Files can now be selected using the d-pad and A buttons.
* Added button support to the file browser. Files can now be selected using the d-pad and A buttons.
*Added auto scrolling to the file browser. Display can now be scrolled by holding down the buttons.
* Added auto scrolling to the file browser. Display can now be scrolled by holding down the buttons.
*Filenames are now displayed in the correct case in the file browser.
* Filenames are now displayed in the correct case in the file browser.
*Added .Z80 loading support.  
* Added .Z80 loading support.  
*Added .Z80 saving support.
* Added .Z80 saving support.
*Implemented REIN fat library to increase hardware compatibility.
* Implemented REIN fat library to increase hardware compatibility.
*The following games which did not work in the previous version are now working:
* The following games which did not work in the previous version are now working:
:Arkanoid
** Arkanoid.
:Asterix and the Magic Cauldron
** Asterix and the Magic Cauldron.
:Bubble Bobble  
** Bubble Bobble .
:Chaos (Some graphical corruption remains)
** Chaos (Some graphical corruption remains).
:Critical Mass
** Critical Mass.
:MegaBucks
** MegaBucks.
:Sabre Wulf (Fixed rhino behaviour)
** Sabre Wulf (Fixed rhino behaviour).
:Uridium
** Uridium.
:Zynaps
** Zynaps.


'''0.1a 19/10/2006'''
'''0.1a 19/10/2006'''
*Enabled support for SD Cards.  Tested on both SuperCard CF and SD.
* Enabled support for SD Cards.  Tested on both SuperCard CF and SD.


'''0.1 18/10/2006''''
'''0.1 18/10/2006''''
*Initial Revision.
* Initial Revision.


[[Category:Homebrew applications]]
<br>
[[Category:DS homebrew emulators]]
[[Category:Homebrew computer emulators on DS]]

Revision as of 14:43, 31 Mayıs 2021

SpeccyDS
File:Speccyds.jpg
General
Author(s)craigt
Version0.3
LicenceMixed
Links
[Media:Speccy03ds.zip Download]
Website
Advertisements

<htmlet>adsense</htmlet>


SpeccyDS is a Sinclair ZX Spectrum emulator for the Nintendo DS/DS Lite. The emulation is based on a ZX Spectrum 48K. 128K emulation is currently unsupported.

Installation

  1. Download and extract file
  2. DLDI patch it and copy it to the root directory of the card

User guide

Basics

Top Screen:

  • This screen displays the main Spectrum display. Borders are not currently displayed.

Touch Screen:

  • This screen will change depending on the current operation. The screen will display one of the following:

Keyboard:

  • The keyboard image displayed is dependant on the current setting selected on the Options screen.
  • The keyboard can be used in the same way as a normal Spectrum 48K spectrum. However, due to the nature of the touch screen, only one key can be pressed at once.
  • The Caps Shift and Symbol Shift keys are "sticky". If selected, they will stay depressed until they are selected again.
  • As on a Spectrum 48K, delete is located on the shifted 0 key.
  • The Reset button performs a hard reset of the Spectrum.

File:Speccyds2.jpg

Save/Load

Load:

  • This screen is displayed after selecting the Load button on the keyboard screen.
  • The current folder (/ by default) is displayed, followed by a list of folders and Spectrum snapshot files (extension .SNA and .Z80) that are contained in the current folder on the homebrew media.
  • All other files are hidden. Only .SNA and .Z80 snapshot files are supported at this time.
  • If you are having problems finding snapshot files, it is possible to convert other spectrum file types to snapshots using any of the many Windows Spectrum emulators that are available.

Quick Load:

  • Selecting the Q to the right of the Load button will perform a quick load.
  • This will load the last .Z80 file saved using the Quick Save option.

Save:

  • This screen is displayed after selecting the Save button on the keyboard screen.
  • Entering a new filename using the touch screen keyboard and pressing Save will save the snapshot.
  • Snapshots are saved in standard .Z80 format and are compatible with other Spectrum emulators.
  • A .Z80 extension is added to the saved file if one is not already specified.

Quick Save:

  • Selecting the Q to the right of the Save button will perform a quick save.
  • This will perform a save to the pre-defined filename SpeccyDS_QuickSave.Z80.
  • This file will be loaded using the Quick Load function.

Navigate through file list:

  • The file list can be scrolled by using the up, down, page up and page down buttons to the right of the file list display or by using up and down on the D-Pad.
  • Selecting a folder using the touch screen or A will enter the folder. Selecting a snapshot file will load the file into memory, return to the keyboard screen and continue the emulation.
  • Selecting the Exit button or pressing B will exit the screen.

Settings

Settings screen:

  • This screen is displayed after selecting the Settings button on the keyboard screen.
  • Selecting Exit will save the current settings and exit the screen.
  • The current settings are saved in the file SpeccyDS.cfg, and are loaded when SpeccyDS restarts.

Controls:

  • Kempston, Cursor, Sinclair 1 and Sinclair 2 joystick assignments can be used by selecting the relevant button.
  • Selecting the Define button allows you to assign a keyboard key to each button on the Nintendo DS. These defined keys are used when the Keyboard option is selected.

Define:

  • This screen allows you to assign a keyboard key to each button on the Nintendo DS.
  • To assign a key, press the button you want to define or select it from the touch screen. Then select the key from the keyboard that should be represented by that button.
  • The Spectrum keyboard displayed is dependant on the current Keyboard Gfx setting. Therefore, you can assign buttons to normally inaccessible keys (such as the cursors) by selecting the Spectrum +2 keyboard.
  • The Exit button saves the current assignments and returns to the Settings screen.

Keyboard Gfx:

  • This option defines the keyboard displayed on the main screen.
  • Spectrum 48K and +2 keyboards are currently available.

Border Size:

  • This option controls the size of the Spectrum border.

Compatibility

This version of SpeccyDS has been successfully tested on real hardware using a SuperCard CF and a DS-Xtreme.

Known Issues

Currently, only the 48K Spectrum is emulated.

Only memory snapshot files are supported (.SNA and .Z80). Tape images (.TAP, .TZX, .PZX etc) are currently not supported.

Even though compatibility is now very good, there will be software that does not run correctly under emulation.

Changelog

0.3 26/08/2007

  • Complete re-write of the GUI.
  • Improved the touch screen accuracy on some Nintendo DS systems.
  • Added Quick Save and Quick Load functionality
  • Added two new keyboard images. A Save keyboard and a Spectrum +2 keyboard.
  • Added a new global settings screen to replace the old Controls screen.
  • Added re-definable keyboard controls.
  • Added border size control.
  • Removed the maximim file limit on the Load screen. There is now no fixed limit.
  • Implemented several Z80 undocumented features, fixing the crash in Ghosts 'n' Goblins.
  • Fixed the flags on the Z80 CPI command, fixing the odd behaviour in Scrabble.

0.2a 05/02/2006

  • Upgraded to libfat, which inludes the DLDI driver.
  • Fixed .z80 loading routine. More .Z80 snapshots will now be accepted.
  • Fixed flag behaviour in DAA instruction to fix problems in Head over Heels.
  • Fixed HALT instruction (again!) to fix crash in Starquake.
  • Implemented a few undocumented instructions.
  • Optomised display routines.
  • Hooked up X and Y buttons.
  • Corrected Sinclair 1 and 2 joystick assignments.
  • Added border emulation (currently disabled).

0.2 19/11/2006

  • Fixed ARM7/ARM9 synchronisation to prevent sound corruption.
  • Altered ADD IX,SP and ADD IY,SP instructions to fix crash in Bubble Bobble.
  • Altered ROM protection to fix crashes in Megabucks and others.
  • Altered HALT instruction to fix crashes in Chaos, Critical Mass and others.
  • Corrected S flag behaviour in BIT instructions to fix Sabre Wulf.
  • Added button support to the file browser. Files can now be selected using the d-pad and A buttons.
  • Added auto scrolling to the file browser. Display can now be scrolled by holding down the buttons.
  • Filenames are now displayed in the correct case in the file browser.
  • Added .Z80 loading support.
  • Added .Z80 saving support.
  • Implemented REIN fat library to increase hardware compatibility.
  • The following games which did not work in the previous version are now working:
    • Arkanoid.
    • Asterix and the Magic Cauldron.
    • Bubble Bobble .
    • Chaos (Some graphical corruption remains).
    • Critical Mass.
    • MegaBucks.
    • Sabre Wulf (Fixed rhino behaviour).
    • Uridium.
    • Zynaps.

0.1a 19/10/2006

  • Enabled support for SD Cards. Tested on both SuperCard CF and SD.

0.1 18/10/2006'

  • Initial Revision.


Advertising: