Homebrew Stella-DS Improved

wavemotion

Benign Geek
OP
Member
Joined
Nov 23, 2020
Messages
908
Trophies
1
XP
7,257
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
 

Alexander1970

XP not matters.
Member
Joined
Nov 8, 2018
Messages
14,973
Trophies
3
Location
Austria
XP
2,480
Country
Austria
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.

View attachment 236701

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.:)
 
  • Like
Reactions: banjo2

wavemotion

Benign Geek
OP
Member
Joined
Nov 23, 2020
Messages
908
Trophies
1
XP
7,257
Country
United States
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.:)
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

XP not matters.
Member
Joined
Nov 8, 2018
Messages
14,973
Trophies
3
Location
Austria
XP
2,480
Country
Austria
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.

Sorry,my Fault.I have used/downloaded the Master Package not the latest Release.Very,very sorry.:shy:
Everything is fine.:lol:
 

Alexander1970

XP not matters.
Member
Joined
Nov 8, 2018
Messages
14,973
Trophies
3
Location
Austria
XP
2,480
Country
Austria
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.
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.:)
 

wavemotion

Benign Geek
OP
Member
Joined
Nov 23, 2020
Messages
908
Trophies
1
XP
7,257
Country
United States
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.:)
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,

wavemotion

Benign Geek
OP
Member
Joined
Nov 23, 2020
Messages
908
Trophies
1
XP
7,257
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,

RocketRobz

Stylish TWiLight Hero
Developer
Joined
Oct 1, 2010
Messages
16,513
Trophies
3
Age
24
XP
20,842
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.

View attachment 236843
Thanks! It'll be included in the next TWiLight Menu++ version.
 

wavemotion

Benign Geek
OP
Member
Joined
Nov 23, 2020
Messages
908
Trophies
1
XP
7,257
Country
United States
Thanks! It'll be included in the next TWiLight Menu++ version.
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,

wavemotion

Benign Geek
OP
Member
Joined
Nov 23, 2020
Messages
908
Trophies
1
XP
7,257
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
 

RocketRobz

Stylish TWiLight Hero
Developer
Joined
Oct 1, 2010
Messages
16,513
Trophies
3
Age
24
XP
20,842
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
What about using the DSi's DSP?
 

Deleted member 668561

GBAtemp Official Psychonaut
Banned
Joined
Jan 29, 2008
Messages
1,875
Trophies
0
Location
somewhere within 4 dimensional space-time
XP
2,654
Country
United States
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 Deleted member 668561,

wavemotion

Benign Geek
OP
Member
Joined
Nov 23, 2020
Messages
908
Trophies
1
XP
7,257
Country
United States
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...
I sometimes feel as if I'm listening to Charlie Brown's parents :D

Though I did understand some of the words you said!
 

Deleted member 668561

GBAtemp Official Psychonaut
Banned
Joined
Jan 29, 2008
Messages
1,875
Trophies
0
Location
somewhere within 4 dimensional space-time
XP
2,654
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!


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 Deleted member 668561,

kane159

Well-Known Member
Member
Joined
May 28, 2013
Messages
215
Trophies
1
Age
34
XP
1,234
Country
Taiwan
Yes it can, but native support is always the best [emoji1] more powerful cpu more ram and bigger resolution
 

wavemotion

Benign Geek
OP
Member
Joined
Nov 23, 2020
Messages
908
Trophies
1
XP
7,257
Country
United States
Yes it can, but native support is always the best [emoji1] more powerful cpu more ram and bigger resolution
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 :)
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
  • Sicklyboy @ Sicklyboy:
    maaaaan that's so awesome but I also don't want to fork over a hundo for it
  • Veho @ Veho:
    The fuuuuu---
  • Veho @ Veho:
    I thought it was an actual xBox at that price.
  • Sicklyboy @ Sicklyboy:
    I wanna grab a 360 Slim and a 360 E one of these days. Missed the boat of getting them at their lowest though, once they were discontinued. Could've got them for cheap back when I was a broke 20 something working at Target, but then again, I was a broke 20 something working at Target
  • Veho @ Veho:
    Being broke is no fun.
  • K3Nv2 @ K3Nv2:
    @Sicklyboy, $150 isn't that bad for a jtag slim on ebay
  • Veho @ Veho:
    I only wish it was actually playable.
  • Veho @ Veho:
    There's a guy on the Tube of You that makes playable mechanical arcade games out of Lego. This could work on the same principle.
  • Veho @ Veho:
    Just a couple of guys taking their manatee out for some fresh air, why you have to molest them?
  • Veho @ Veho:
    Stupid Chinese shop switched their shipping company and this one is slooooooow.
  • LeoTCK @ LeoTCK:
    STOP BUYING CHINESE CRAP THEN
  • LeoTCK @ LeoTCK:
    SUPPORT LOCAL PRODUCTS, MAKE REVOLUTION
  • LeoTCK @ LeoTCK:
    THEY KEEP REMOVING LOCAL SHIt AND REPLACING WItH INFERIOR CHINESE CRAP
  • LeoTCK @ LeoTCK:
    THATS WHY MY PARTNER CANT GET A GOOTWEAR HIS SIZE ANYMORE
  • LeoTCK @ LeoTCK:
    HE HAS BIG FOOT AND BIG DUCK
  • LeoTCK @ LeoTCK:
    d*ck i mean*
  • LeoTCK @ LeoTCK:
    lol
  • Veho @ Veho:
    Mkay.
  • Veho @ Veho:
    I just ordered another package from China just to spite you.
  • SylverReZ @ SylverReZ:
    Leo could not withstand communism.
  • SylverReZ @ SylverReZ:
    Its OUR products to begin with lol.
    SylverReZ @ SylverReZ: Its OUR products to begin with lol.