Homebrew [Preview] Z26 3DS - Atari 2600 Emulator

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
2,986
Country
Italy
I'm working on porting z26 to 3ds and someone asked me to test it.

So here it is, attached you find the 3dsx version.

This is'n a simple port from SDL to 3DS IO functions, like the other two projects I posted. I'm modifying part of the code of the original emulator to make it run faster on o3ds.

In the version posted, after a first try using sf2dlib to draw frames (which resulted in about 1/4 of the needed fps, I changed the code to write pixels directly on the framebuffer. Now it works at about half speed on o3ds and I think I can gain some more speed using 16bpp instead of 32.

I'm also working on the opcode interpreter to find other possible optimization.

To test it, make a folder in the root of the SD named Atari2600 and copy some 2600 roms in it. You can also use subdirectorys to organize roms if you want.

In the menu use Up-Down to navigate, Left-Right moves page Down-Up. A selects a menu item and B is to exit from a menu page.

During game DPad and A emulate the Joystic 1 (no joy 2, there is an option to swap ports, but I did not tested it) X-Y select the difficulty, Select is the select key and Start is the reset Key.

Pressing L and R pauses the game and opens the menu (no return to your game, if you exit ther menu the loaded rom is resetted).

Warning: If you swap too many roms the emulator crashes (the original code don't let you load a new rom, so I have to check if some allocated memory isn't released)

On N3ds the emulator should run faster, but there isn't any FPS limiter, so it could run faster than normal.

As soon as I have a faster version I'll make an official release with menu options cleaned (some doesn't make anything).

Here are some screenshot (not from this version).


z26_1.png
z26_2.png


EDIT: updated sources are on my Github
 

Attachments

  • z26-3ds.zip
    135.5 KB · Views: 3,574
Last edited by nop90,

zoogie

playing around in the dsiware
Developer
Joined
Nov 30, 2014
Messages
8,457
Trophies
2
XP
14,035
Country
Micronesia, Federated States of
Tested Haunted House and Joust on n3ds 9.2
Ninjhax 1 - both worked fine - no sound - slow
Ninjhax 2 - both worked fine - no sound - full speed (too fast on joust!)

Not much of a test but its a start. Nice work.
 
  • Like
Reactions: SLiV3R

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
2,986
Country
Italy
The name of the folder in the zip is wrong. I'll fix it when I arrive at work.

--------------------- MERGED ---------------------------

Tested Haunted House and Joust on n3ds 9.2
Ninjhax 1 - both worked fine - no sound - slow
Ninjhax 2 - both worked fine - no sound - full speed (too fast on joust!)

Not much of a test but its a start. Nice work.
Thank you. This is a preview not a release. There are a lot of things to fix/complete. And my goal is to make it work on o3ds.
 
  • Like
Reactions: doha057 and zoogie

AtlasFontaine

Well-Known Member
Member
Joined
Jul 18, 2015
Messages
1,095
Trophies
0
Age
24
Location
Venezuela-Zulia.
XP
845
Country
Venezuela
Runs at good speed on O3DS, still improvable (obviously is in early stages lol)
You're the hero that we O3DS users need, I hope you continue delivering more emulators in the future <3
 
  • Like
Reactions: SLiV3R

ric.

Drivin' to meme country
Member
Joined
Sep 17, 2015
Messages
791
Trophies
0
XP
1,398
Country
Peru
This is great, the 2600 has a lot of gems I've been meaning to revisit - Combat, Keystone Capers, Pitfall, Adventure, etc. Not to mention all the homebrew games that are still being released to this day.

Awesome job!
 
  • Like
Reactions: SLiV3R

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
2,986
Country
Italy
File in the OP updated with folder name aligned to 3dsx name, so you can now copy the folder directly in the 3ds directory.

The sources are on my github if someone is interested.

And now a little request to old 2600 gamers
: when I was very young I never finished E.T., and I want to do it now. Yesterday I missed the spaceship for a fraction of second (damn FBI agent). I have a question, if the agent takes a piece of the telephone, how can you recover it? I didn't found it in the pits.
 

zoogie

playing around in the dsiware
Developer
Joined
Nov 30, 2014
Messages
8,457
Trophies
2
XP
14,035
Country
Micronesia, Federated States of
File in the OP updated with folder name aligned to 3dsx name, so you can now copy the folder directly in the 3ds directory.

The sources are on my github if someone is interested.

And now a little request to old 2600 gamers
: when I was very young I never finished E.T., and I want to do it now. Yesterday I missed the spaceship for a fraction of second (damn FBI agent). I have a question, if the agent takes a piece of the telephone, how can you recover it? I didn't found it in the pits.
I don't know if this can help you, but here is the source to alekmaul's excellent StellaDS. Since it runs pretty good on DS, I'm sure it can run full speed on 3DS :)
It wasn't easy to find - took me forever to track it down because all the homebrew bounty links were down.
 

Attachments

  • StellaDSV10_source.zip
    246.8 KB · Views: 402

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
2,986
Country
Italy
I noticed that the emulator crashes when you have a huge list of games to choose from.
I have roms organized in 5 folders and the one with mor files has 153.

I'l check if there is a limit in the code (this part is from original emulator gui) so i can change the code to use dynamic allocation.

But using too many files makes the directory very slow to be scanned, so consider to use max 100 files per folder.
 

You may also like...

General chit-chat
Help Users
  • No one is chatting at the moment.
    Psionic Roshambo @ Psionic Roshambo: https://i.imgur.com/IXlPrt6.jpeg