Homebrew [Release] Vice3DS (C64 Emulator)

Badda

me too
OP
Member
Joined
Feb 26, 2016
Messages
318
Trophies
0
Location
under the bridge
XP
2,406
Country
Tokelau
New version v1.6 is out. Here are the changes:
  1. enhancement: major performance increase by optimizing and merging top (SDL) and bottom (citro3D) screen update routines
  2. enhancement: reSID sound engine support. Default engine is fastSID for O3DS, reSID for N3DS. reSID is more performance-hungry than fastSID, but sound is by far better. To change this setting, open VICE menu and go to "Machine settings" -> "Model settings" -> "SID settings" -> "SID model"
  3. enhancement: new help screen to show all current button functions (in emu and in menu)
  4. enhancement: soft button positions can now be changed by activating edit-mode (VICE menu: "Misc" -> "Edit bottom screen button positions") and dragging the soft buttons with the stylus. New positions are saved when saving settings
  5. enhancement: applying default setting will not require restart anymore
  6. enhancement: config files (vicerc, ROMs, icons etc.) are stored internally per default, files on SD card override internal files. Added menu entry in "Settings" menu to copy all internal config files to SD card.
  7. optimization: remove SDL joystick - all 3ds buttons and pad directions are now "keys" for vice3DS. These keys can be mapped to C64-joysticks via definition of keysets.
  8. optimization: define all default settings in code, no sdl-vicerc config file needed anymore
  9. optimization: optimize compiler flags for speed
  10. bugfix: eliminated sound distortions when using bottom screen (result of performance increase)
  11. bugfix: some soft buttons wouldn't unstick, fixed bug in MaxScreen softbutton
  12. multiple other small enhancements, optimizations and bug fixes
Important: Config file handling has changed a lot in this version (see point 6 above), so if you're updating from a previous version, make sure to delete all subdirectories within the vice3ds directory /3ds/vice3ds on your SD-card before starting the emulator. Otherwise new config settings, hotkeys and key mappings will not be updated and will not work.

https://github.com/badda71/vice3ds/releases

Have Fun! :yay3ds:
 

Elwyndas

Well-Known Member
Member
Joined
Dec 19, 2018
Messages
197
Trophies
0
XP
681
Country
United States
It looks and sounds great. I think I found a bug.
When you load a demo like this one
https://csdb.dk/release/?id=170944
which doesn't like additional devices on the IEC bus, it refuses to load and gives a warning (the software, not the emulator). However when you check, there are no additional devices connected. I reset to default config, but the problem persisted. I tried this with multiple demos that are "IEC challenged."
 

Badda

me too
OP
Member
Joined
Feb 26, 2016
Messages
318
Trophies
0
Location
under the bridge
XP
2,406
Country
Tokelau
It looks and sounds great. I think I found a bug.
When you load a demo like this one
https://csdb.dk/release/?id=170944
which doesn't like additional devices on the IEC bus, it refuses to load and gives a warning (the software, not the emulator). However when you check, there are no additional devices connected. I reset to default config, but the problem persisted. I tried this with multiple demos that are "IEC challenged."
You need to turn on true drive emulation ... :-)
 
Last edited by Badda,

Bizzaro

New Member
Newbie
Joined
Oct 12, 2019
Messages
1
Trophies
0
Age
50
XP
374
Country
Sweden
Badda!

I just had to make this account to say thank you for making this program. The 3DS is perfect as a C64 Emulator with the lower screen acting as the keyboard.
I will be using your program way more than any other on my N3DS!

Thank you again!

/Bizzaro
 
  • Like
Reactions: Elwyndas and Badda

Badda

me too
OP
Member
Joined
Feb 26, 2016
Messages
318
Trophies
0
Location
under the bridge
XP
2,406
Country
Tokelau
Badda!

I just had to make this account to say thank you for making this program. The 3DS is perfect as a C64 Emulator with the lower screen acting as the keyboard.
I will be using your program way more than any other on my N3DS!

Thank you again!

/Bizzaro

Thanks for the feedback - I'm always happy to hear that this little piece of software is appreciated :-)
Bug reports and feature requests are always welcome as well ...
 
  • Like
Reactions: Bizzaro

Elwyndas

Well-Known Member
Member
Joined
Dec 19, 2018
Messages
197
Trophies
0
XP
681
Country
United States
On the New 3DS, I recommend to adjust the default settings the following way, in order to get the most out of it, and also to notice when even this much improved release reaches its limits :)

- Drive sound emulation: ON
It has a slight impact on performance, but this feature is just too cool as it contributes to the C64 vibe we grew up with. However the emulation is not perfect. For example the legendary drive music program doesn't play the Sing Song Serenade through the floppy header :)
https://csdb.dk/release/?id=37806

- Refresh rate under Speed setting to 1:1
This forces the emulator to be frame exact. In the versions prior to 1.6 the 1:1 setting would lead to distorition - not anymore. Yay! If the software still reaches its limit, you will notice audio problems, and perhaps there are ways to optimize this. With some of the more advanced demos you might run into issues.

- SID Model: 8580 + digi boost (ReSID)
I noticed that with this setting, even the most advanced demos like Wonderland 13 sound almost perfect, but it's driving Vice3DS to the limits. In Wonderland 13 check out the digi loaded 3rd disc for what you can get out of this emulator.
https://csdb.dk/release/?id=151275

- Adding additional SID's.
Amazingly, this works also with ReSID on all SIDs. The additional chips should be on $D420 and $D440. Try out some of the 3 SID demos from Samar Productions. I recommend to connect to a real speaker system. It's amazing how much oomph the little machine produces. Demos that autodetect additional SIDs fail to do so under Vice3DS, perhaps this can be improved.
https://csdb.dk/release/?id=132238

- Increase sound frequency to 48,000
I cannot really tell the difference though. Maybe it's my age.

- Download the top demos made for the C64. These are pieces of art
https://csdb.dk/toplist.php?type=release&subtype=(1)
 
Last edited by Elwyndas,
  • Like
Reactions: Badda and Bizzaro

thealgorithm

Well-Known Member
Member
Joined
Oct 27, 2015
Messages
393
Trophies
0
Age
48
XP
786
Country
Nice. Just a note, that using the 8580+digiboost will cause a lot of distortion on digitized playback methods that use the 8bit d418 method. e.g my 16hz ssdpcm2 demo https://csdb.dk/release/?id=162796 for that and other demo's that use similar playback method, use just resid+8580 for cleaner sound. The wonderland 13 demo uses adsr digi's so will not be affected by digiboost off or on.
 

Badda

me too
OP
Member
Joined
Feb 26, 2016
Messages
318
Trophies
0
Location
under the bridge
XP
2,406
Country
Tokelau
On the New 3DS, I recommend to adjust the default settings the following way, in order to get the most out of it, and also to notice when even this much improved release reaches its limits :)

- Drive sound emulation: ON
It has a slight impact on performance, but this feature is just too cool as it contributes to the C64 vibe we grew up with. However the emulation is not perfect. For example the legendary drive music program doesn't play the Sing Song Serenade through the floppy header :)
https://csdb.dk/release/?id=37806

- Refresh rate under Speed setting to 1:1
This forces the emulator to be frame exact. In the versions prior to 1.6 the 1:1 setting would lead to distorition - not anymore. Yay! If the software still reaches its limit, you will notice audio problems, and perhaps there are ways to optimize this. With some of the more advanced demos you might run into issues.

- SID Model: 8580 + digi boost (ReSID)
I noticed that with this setting, even the most advanced demos like Wonderland 13 sound almost perfect, but it's driving Vice3DS to the limits. In Wonderland 13 check out the digi loaded 3rd disc for what you can get out of this emulator.
https://csdb.dk/release/?id=151275

- Adding additional SID's.
Amazingly, this works also with ReSID on all SIDs. The additional chips should be on $D420 and $D440. Try out some of the 3 SID demos from Samar Productions. I recommend to connect to a real speaker system. It's amazing how much oomph the little machine produces. Demos that autodetect additional SIDs fail to do so under Vice3DS, perhaps this can be improved.
https://csdb.dk/release/?id=132238

- Increase sound frequency to 48,000
I cannot really tell the difference though. Maybe it's my age.

- Download the top demos made for the C64. These are pieces of art
https://csdb.dk/toplist.php?type=release&subtype=(1)

Great, thanks for the tips :-)
With regards to the drive music, I created a feature request with the VICE team. Let's see if they take it up: https://sourceforge.net/p/vice-emu/feature-requests/340/
Is the issue with autodetecting the additional SIDs specific to vice3DS or does it exist in other vice ports as well?
 

Elwyndas

Well-Known Member
Member
Joined
Dec 19, 2018
Messages
197
Trophies
0
XP
681
Country
United States
Great, thanks for the tips :-)
With regards to the drive music, I created a feature request with the VICE team. Let's see if they take it up: https://sourceforge.net/p/vice-emu/feature-requests/340/
Is the issue with autodetecting the additional SIDs specific to vice3DS or does it exist in other vice ports as well?

I have seen reports about other ports not being able to detect it as well.

It looks like a tricky issue
https://www.lemon64.com/forum/viewtopic.php?t=68500&sid=80976fb2c8af74f2b94334a119ec566d
 
Last edited by Elwyndas,

Badda

me too
OP
Member
Joined
Feb 26, 2016
Messages
318
Trophies
0
Location
under the bridge
XP
2,406
Country
Tokelau
- Drive sound emulation: ON
It has a slight impact on performance, but this feature is just too cool as it contributes to the C64 vibe we grew up with. However the emulation is not perfect. For example the legendary drive music program doesn't play the Sing Song Serenade through the floppy header :)
https://csdb.dk/release/?id=37806
Quote from Querino on sourceforge:
actually the one you link does work.


load and run, press "space", the drive is only clicking and "ready." turns up.
now type "run + enter", drive sound works. :)


... you need to enable true drive emulation first, of course :-)
 

Badda

me too
OP
Member
Joined
Feb 26, 2016
Messages
318
Trophies
0
Location
under the bridge
XP
2,406
Country
Tokelau
That will be fixed in release 2.0, "Bloody Mary".

good idea ... probably :grog:
image.axd

Code:
// drunk, fix later
 
  • Like
Reactions: Elwyndas

Badda

me too
OP
Member
Joined
Feb 26, 2016
Messages
318
Trophies
0
Location
under the bridge
XP
2,406
Country
Tokelau
Version 2 release candidate 1 is out ...
Menu code was completely revamped in order to enable emulation to continue running while menu is active. Apart from this, the menu moved to bottom screen and is completely useable with the stylus. This required a lot of changes: I had to move the complete menu handling to a different thread - thereby getting myself into having to deal with concurrency and all its ugly pitfalls (race conditions etc.). Thats why I need some help in testing ...

Here are the changes:
  • enhancement: vice menu moved from top to bottom screen, emulation does not pause anymore while menu is open
  • enhancement: vice menu now useable with stylus
  • enhancement: customizeable C64 keyboard command shortcuts
  • optimization: changed button functions in menu: map hotkey with R-button; L-button to use the emulation while menu is active
  • bugfix: removed monitor from cpujam messagebox
  • bugfix: sometimes d64 files were corrupted after autostart
  • multiple other small enhancements, optimizations and bug fixes
https://github.com/badda71/vice3ds/releases

Have fun and happy testing. I'm looking forward to feedback and bug reports :yay3ds:
 
Last edited by Badda,

Elwyndas

Well-Known Member
Member
Joined
Dec 19, 2018
Messages
197
Trophies
0
XP
681
Country
United States
OMG
you did it! This is the ultimate release! All the other handheld retroarchs and whatevers are paling now. Actually this is the best implementation of VICE for sure. It's so neat to have multiple controllers at your finger tips, easy switching between options, a keyboard, and so on. It beats the desktop emulators where you need to connect controllers and start an antiquated windows menu that pauses the emulation. The real C64 also doesn't stop running when you insert a disc into the floppy drive! True emulation should account for this, and Vice3DS does. Huge step! In fact this should inspire 3DS ports for other emulators to follow suit. I remember that seeing the ZX Spectrum emulator for DS (ZXDS, by Patrik Rak) was a great inspiration. It's the only other emulator I know that makes good use of the double/touch screen. Perhaps give them some credit. I certainly got some ideas from it that I posted here. If anybody is interested in running ZXDS on the 3DS, I got it to run by starting it through TwiLight Menu++ from one of those hacker carts. I will post detailed instructions if anybody cares.
 
Last edited by Elwyndas,

Muxi

Well-Known Member
Member
Joined
Jun 1, 2016
Messages
605
Trophies
0
Age
52
XP
2,128
Country
Germany
Good work! I have found a bug that leads to crashes (freezing) of vice3DS v2 RC1. If the "Edit bottom screen button positions" option is to be deactivated again, vice3DS always hangs up.
 
Last edited by Muxi,
  • Like
Reactions: Badda

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • AncientBoi @ AncientBoi:
    eeewww
  • K3Nv2 @ K3Nv2:
    I thought it was the toilet
  • AncientBoi @ AncientBoi:
    okies. Time to go watch YT paranormal ghost things. L8er my luvs :D
    +1
  • K3Nv2 @ K3Nv2:
    I got a massive clue
  • BakerMan @ BakerMan:
    this mf def ain't watching ghost shit, he boutta beat his meat fr
    +1
  • K3Nv2 @ K3Nv2:
    Nah he's about to be the ghost in your bedroom
    +1
  • Xdqwerty @ Xdqwerty:
    @K3Nv2, and leave ectoplasm all over the place
  • BakerMan @ BakerMan:

    this is him being described
    +2
  • Xdqwerty @ Xdqwerty:
    Sigh
  • Xdqwerty @ Xdqwerty:
    Yawn
  • Xdqwerty @ Xdqwerty:
    @SylverReZ, I dislike the kind of drm where you have to play single player games online all the time bc of some verification bs
    +1
  • SylverReZ @ SylverReZ:
    @Xdqwerty, Don't use games that have Easy Anti-Cheat as its been exploited many times.
  • Xdqwerty @ Xdqwerty:
    @SylverReZ, my PC can't run most AAA games so i wont
    +1
  • Xdqwerty @ Xdqwerty:
    Most of the modern AAA games
    +1
  • Xdqwerty @ Xdqwerty:
    @SylverReZ, I also heard one of the Prince of Persia games was so unfinished that it required the "24/7 online" drm so a puzzle could be done and the game could be finished. And that when the Ubisoft servers were closed the (cracked) game was impossible to finish or something like that
  • SylverReZ @ SylverReZ:
    @Xdqwerty, That's extra scummy. Ubisoft nowadays ship out incomplete games like Skull and Bones which was being worked on for nearly a decade now.
    +1
  • Xdqwerty @ Xdqwerty:
    @SylverReZ, i think they have been doing that since late 2000s
    +1
  • Xdqwerty @ Xdqwerty:
    Either that or their old games were unfinished aswell but we can't notice it
  • Psionic Roshambo @ Psionic Roshambo:
    I like that games can be fixed after the fact, hate that it's being abused via beta tests... And DLC... I was a 7800 owner back in the day and loved Impossible Mission, turns out I couldn't beat it because it was actually impossible lol
  • Psionic Roshambo @ Psionic Roshambo:
    I never knew about it at the time but a fixed version was available but you had to mail in your broken copy lol
  • Psionic Roshambo @ Psionic Roshambo:
    So that version is semi rare
  • Xdqwerty @ Xdqwerty:
    @Psionic Roshambo, I have a rom of the ds version of impossible mission
    Xdqwerty @ Xdqwerty: @Psionic Roshambo, I have a rom of the ds version of impossible mission