1. wavemotion

    OP wavemotion GBAtemp Regular
    Member

    Joined:
    Nov 23, 2020
    Messages:
    167
    Country:
    United States
    Sick of me yet?! :)

    Version 1.1k released: https://github.com/wavemotion-dave/StellaDS

    Added Sound ON/OFF. The sound handler runs at 22Khz (22,050 times per second) and disabling this will render the games mute but will also gain back 10% speed improvement. Games like Pitfall II are almost playable at 45FPS now without sound. Most games will run fine with sound. This speedup improvement will be of most benefit on the older DS-LITE and DS-PHAT architectures which are running at half the speed of the DSi.

    upload_2020-12-4_9-23-5.png
     
  2. alexander1970

    alexander1970 Sometime it gets better..
    Member

    Joined:
    Nov 8, 2018
    Messages:
    12,497
    Country:
    Austria
    Thank you,very nice.:yay:
    I am maybe blind,but where can I toggle on/off the Sound please (DS Lite with Flashcard).:(

    Thank you.:)
     
    banjo2 likes this.
  3. wavemotion

    OP wavemotion GBAtemp Regular
    Member

    Joined:
    Nov 23, 2020
    Messages:
    167
    Country:
    United States
    It's the new toggle switch on the lower left corner of the main display. The ON=Sound On (default) and OFF=Sound Off. Those switches are only active when a game has been selected first.
     
    alexander1970, Robz8 and banjo2 like this.
  4. alexander1970

    alexander1970 Sometime it gets better..
    Member

    Joined:
    Nov 8, 2018
    Messages:
    12,497
    Country:
    Austria
    Sorry,my Fault.I have used/downloaded the Master Package not the latest Release.Very,very sorry.:shy:
    Everything is fine.:lol:
     
    Robz8, banjo2 and wavemotion like this.
  5. alexander1970

    alexander1970 Sometime it gets better..
    Member

    Joined:
    Nov 8, 2018
    Messages:
    12,497
    Country:
    Austria
    Now I have tried it on the DSi XL with TWiLight (replaced the Build/Version from TWiLight v17.1.1 with your latest Build).
    Really great Speed/Performance.:yay:

    Thank you.:)
     
    Robz8, banjo2 and wavemotion like this.
  6. wavemotion

    OP wavemotion GBAtemp Regular
    Member

    Joined:
    Nov 23, 2020
    Messages:
    167
    Country:
    United States
    Thanks for the feedback, brother!

    I'm almost happy with the speed. I have one last big trick up my sleeve - but I can't get it to work yet. Hopefully soon.

    Also, the DSi XL (or LL) is the optimal machine to run this on. The screen hardware on the XL/LL is different than the normal DSi (beyond just the physical size difference). It has a wider viewing angle and seems to hold on to the pixel a brief period longer than the DSi and so it has the effect of giving a bit of latency on the pixels which looks great for the Atari 2600 emulation.
     
    Last edited by wavemotion, Dec 4, 2020
    alexander1970, Robz8 and banjo2 like this.
  7. wavemotion

    OP wavemotion GBAtemp Regular
    Member

    Joined:
    Nov 23, 2020
    Messages:
    167
    Country:
    United States
    And finally a stable release! Version 1.5 is released at: https://github.com/wavemotion-dave/StellaDS

    I went through about 100 of my favorite Atari games and all play fine with the exception of Pitfall II which I can only get up to about 42 FPS without sound (though the original emulator I started with could barely do 28 FPS). I also hit a sort of internal milestone - 150 Frames Per Second on Adventure. This means the DSi is capable of running the game at 250% speed.

    Overall my benchmarks show close to 50% improvement in emulation speed on this version over the previous version that's in TWL++ plus all of the UI improvements for paddle games, difficulty switch support and keypad support. I've no idea if Robz would want to use this new version in upcoming TWL packages - but he is welcome to it.

    It wasn't one big thing but probably fifty different 1% speed improvements that accumulated.

    Now I'm off to add AtariVox Savekey support for the homebrews that use it.

    upload_2020-12-5_7-33-8.png
     
    Last edited by wavemotion, Dec 5, 2020
  8. Robz8

    Robz8 Coolest of TWL
    Developer

    Joined:
    Oct 1, 2010
    Messages:
    14,107
    Country:
    United States
    Thanks! It'll be included in the next TWiLight Menu++ version.
     
  9. wavemotion

    OP wavemotion GBAtemp Regular
    Member

    Joined:
    Nov 23, 2020
    Messages:
    167
    Country:
    United States
    Woot!

    Version 1.6 released: https://github.com/wavemotion-dave/StellaDS

    This is a spit-and-polish release. I went through about 300 games now and fixed a few odd controller issues (e.g. Video Olympics uses the OTHER paddle). Added support for Star Raiders which uses Joystick in port 1 and Keypad in port 2. Removed one bit of debug code which yields another 1% speed improvement. About a dozen games got slight shifts in their Y-offsets to better position them on screen by default. Compatibility list is now complete as far as I want to take it... measuring Frames per Second on all the popular games. I added a 'Thank You' to the readme mentioning Brad (Stella), Alek (original port to DS) and Robz (TWL++ and rekindling the flame).

    At this point, the deltas between the code I started with and the deltas Alekmaul did on the original Stella code are comparable so I'm adding myself to the splash screen :)

    upload_2020-12-6_9-30-22.png

    Robz - would appreciate this version included instead of the 1.5
     
    Last edited by wavemotion, Dec 6, 2020
    draftguy, Chainhunter, Robz8 and 4 others like this.
  10. wavemotion

    OP wavemotion GBAtemp Regular
    Member

    Joined:
    Nov 23, 2020
    Messages:
    167
    Country:
    United States
    No new build - version 1.6 appears quite stable.

    Mostly I've been trying to get Pitfall II running. It's a beast - uses a co-processor built into the Cart itself. This handles things like music mappers, random number generator and image fetchers. This is the only cart that uses the DPC memory map scheme.

    The DSi just doesn't have the processing power to deal with the 6502 CPU, TIA and RIOT chips PLUS a co-processor specific to one game. I've stripped out the music mapper and the random number generator (only used to make the eel glow...) and pulled some tricks on bank-switching that are probably ill-advised and I've been able to get Pitfall II up to a respectable 45 FPS with bursts up to 50 FPS when the action isn't frantic. So it's almost playable without sound (and no eel glow).

    The step up from the DPC is DPC+ which is used on newer homebrew carts for the Atari 2600. Amazing games like Space Rocks and Mappy use this. But that has an ARM co-processor that runs at 65MHz - about the same speed as the original DS CPU. There is no possibility of emulating this at more than a few frames per second. I had a fleeting grand idea of using the DS' ARM7 co-processor to emulate the co-processor for DPC+ but then remembered I'm not completely bat-shit crazy :P
     
  11. Robz8

    Robz8 Coolest of TWL
    Developer

    Joined:
    Oct 1, 2010
    Messages:
    14,107
    Country:
    United States
    What about using the DSi's DSP?
     
  12. wavemotion

    OP wavemotion GBAtemp Regular
    Member

    Joined:
    Nov 23, 2020
    Messages:
    167
    Country:
    United States
    Um... there's a DSP?! :D

    You might as well have asked me to split an atom! But I can learn... I'll do some research.
     
  13. Robz8

    Robz8 Coolest of TWL
    Developer

    Joined:
    Oct 1, 2010
    Messages:
    14,107
    Country:
    United States
    You can check GBARunner2's DSP branch source code.
     
    alexander1970, wavemotion and banjo2 like this.
  14. aadz93

    aadz93 GBAtemp Official Psychonaut
    Member

    Joined:
    Jan 29, 2008
    Messages:
    876
    Country:
    Korea, North
    Take a nds and connect an STM32H750VBT6, and 16MB of ram, via slot2, a 32 bit co processor @480mhz, with its own cache, and 1mb of ram, (128kb flash)

    And pull a retroarch, offload part of the emulation to the slot 2, loading the "core" and now there is 20mb of ram, also....the big limitation is slot-2 throughput, i know that the slot-1 was slow, even with the original dstwo cpu, i wonder if this could be ported to the dstwo....


    i mean slot-2 has 24bits of address space, and 16 bit data bus, its multiplexed, though why should it go unused...
     
    Last edited by aadz93, Dec 7, 2020
    alexander1970 and wavemotion like this.
  15. wavemotion

    OP wavemotion GBAtemp Regular
    Member

    Joined:
    Nov 23, 2020
    Messages:
    167
    Country:
    United States
    I sometimes feel as if I'm listening to Charlie Brown's parents :D

    Though I did understand some of the words you said!
     
    Robz8, banjo2, aadz93 and 1 other person like this.
  16. aadz93

    aadz93 GBAtemp Official Psychonaut
    Member

    Joined:
    Jan 29, 2008
    Messages:
    876
    Country:
    Korea, North

    Tldr; make a GBA slot-2 card, containing a 32bit dsp (stm32) running @ 480 mhz, the mcu has its own 128k of flash (for a initial startup, and device init) with 1mbyte of total ram, and add 16MB of sram

    Gives the nds 20MB of ram, an arm cortex -m7 with a bunch of useful accessories, this would definitely improve certain emulators, moonshell without dpg conversion, also one can do more complex things, and add external gpio


    Gonna have my ds looking like this:


    upload_2020-12-8_9-20-34.png





    The microcontroller:

    https://www.st.com/resource/en/datasheet/stm32h750vb.pdf
     
    Last edited by aadz93, Dec 8, 2020
  17. kane159

    kane159 GBAtemp Regular
    Member

    Joined:
    May 28, 2013
    Messages:
    210
    Country:
    Taiwan
    Holy s**t This is so cool man is this possible to port this to 3ds?
     
    wavemotion and banjo2 like this.
  18. wavemotion

    OP wavemotion GBAtemp Regular
    Member

    Joined:
    Nov 23, 2020
    Messages:
    167
    Country:
    United States
    I'm a little clueless here... I assumed it would work fine on the 3DS with TWL++ installed. No? @Robz8 ?
     
    alexander1970 likes this.
  19. kane159

    kane159 GBAtemp Regular
    Member

    Joined:
    May 28, 2013
    Messages:
    210
    Country:
    Taiwan
    Yes it can, but native support is always the best more powerful cpu more ram and bigger resolution
     
  20. wavemotion

    OP wavemotion GBAtemp Regular
    Member

    Joined:
    Nov 23, 2020
    Messages:
    167
    Country:
    United States
    The Atari 2600 had a full 128 bytes of state-of-the art RAM :) And most carts were 4k of ROM.
    The resolution almost perfectly matches the native DS screen (stock Atari 2600 games were supposed to stick to 192 scanlines though most games ended up using a few extra top and bottom which are often just sky/ground which I've eliminated as I don't want to scale and lose some lines in the middle of the playfield). It would actually be harder to scale it to the 3DS as some pixel interpretation must take place.

    We could fit approximately 37 million Atari Emulator cores in the DSi. I suppose double that for the 3DS would be overkill :)
     
    Robz8, alexander1970 and banjo2 like this.
Draft saved Draft deleted
Loading...

Hide similar threads Similar threads with keywords - Improved, Stella,