Homebrew [Release] PicoDrive for 3DS

bubble2k16

Well-Known Member
OP
Member
Joined
Jul 25, 2016
Messages
467
Trophies
0
XP
2,118
Country
Senegal

wicksand420

Well-Known Member
Member
Joined
Nov 13, 2016
Messages
2,787
Trophies
1
Age
39
XP
2,296
Country
United States
Mine is the BIN/CUE version. Is your ISO version the one with the WAV files? I can't find such dumps online.

Yes, I made it last night from sonic retro, it called for the original sound files from sonic cd, I had the disc, so i ripped the audio files and made a cue with sega cue maker, burned it to disc, and made a copy of the disc as a bin.

Also, on a side note, @Robz8 where did you find the sonic megamix 5.0b, all i could find was 4.0b on there website
 
Last edited by wicksand420,

zhuwz

Member
Newcomer
Joined
Jan 12, 2018
Messages
23
Trophies
0
Age
33
XP
67
Country
China
Mine is the BIN/CUE version. Is your ISO version the one with the WAV files? I can't find such dumps online.



I noticed the graphic problem with SF2. Not sure why... I'll see if anything can be done with that.

As for music, do you happen to be using an Old 3DS? If so, that might explain the difference. The music is generated at a lower sampling rate which gives a noisier feel, and the high frequency tones won't sound as good. Because I wanted to offload the FM music to the 2nd core to keep things running at 60 FPS, the FM music takes a hit in quality. Unfortunately, but nothing much I can do. The Ne

Thanks for the reply.

I don't have an o3ds, so sorry I can't test anything on o3ds.

Regarding the game speed, I think it is better if you can replace the "framerate" option to "System Region", including NTSC-U, NTSC-J and PAL. Because so far in your emulator, there is no way to switch JE (I think it means JAP and EUR multi regional) roms to JAP version. These JE roms runs in 50fps as standard EUR roms, if I force the game speed to 60fps, the music becomes too fast, and after resetting the game, even frameskip goes wrong. By selecting NTSC-J or PAL, we can choose JE roms to run as JAP or EUR freely, and get correct game and music speed. It is also nice if you can run JE roms as JAP version by default, like RA Genisis core, since few people want to play EUR roms due to the slow game speed.

Regarding the music, will you kindly consider making a exclusive version for new3ds? :yay3ds:Since I believe new3ds is powerful enough to run MD games in full speed and generate perfect music.
 

bubble2k16

Well-Known Member
OP
Member
Joined
Jul 25, 2016
Messages
467
Trophies
0
XP
2,118
Country
Senegal
Thanks for the reply.

I don't have an o3ds, so sorry I can't test anything on o3ds.

Regarding the game speed, I think it is better if you can replace the "framerate" option to "System Region", including NTSC-U, NTSC-J and PAL. Because so far in your emulator, there is no way to switch JE (I think it means JAP and EUR multi regional) roms to JAP version. These JE roms runs in 50fps as standard EUR roms, if I force the game speed to 60fps, the music becomes too fast, and after resetting the game, even frameskip goes wrong. By selecting NTSC-J or PAL, we can choose JE roms to run as JAP or EUR freely, and get correct game and music speed. It is also nice if you can run JE roms as JAP version by default, like RA Genisis core, since few people want to play EUR roms due to the slow game speed.

Regarding the music, will you kindly consider making a exclusive version for new3ds? :yay3ds:Since I believe new3ds is powerful enough to run MD games in full speed and generate perfect music.

On NTSC-J:
Based on what I have read in the codes, it doesn’t seem possible to set the frame rate to 60 and have the music play at the same speed as the EUR version. The emulation is only configuration within PicoDrive as a pal or a non-pal game. No other option.

But I could be wrong. Does the PicoDrive libretro core work correctly? Can you also tell me which game has this problem?

On music:
the current release already generates music at a full 44.1khz for music on the new 3DS, but if it detects that you are running on an old 3DS, it will down sample everything to 30khz.

Which games did you mention have this stark difference in music quality?
 

Deleted member 424658

Annoying Weaboo Girl
Member
Joined
Jun 4, 2017
Messages
499
Trophies
0
Age
24
Website
www.reddit.com
XP
677
Country
United States
*snip*
If the dev doesn't want to add it then they're not going to add it. Accept it or go code it yourself. And if you can't code, then who gives a fuck? Leave the dev to work how they want to.
 
Last edited by porkiewpyne, , Reason: Removed quote to trashed post

CeeDee

fuckin dork
Member
Joined
May 4, 2014
Messages
5,360
Trophies
3
XP
9,937
Country
United States
So, if I have a Sonic CD bin with the music files inside it, how would I go about putting those music files in CD++ and running it on here?
 

Instandhaltung

I feel it. I feel the cosmos!
Member
Joined
Aug 4, 2016
Messages
246
Trophies
0
Age
35
XP
1,952
Country
Germany
Because the coder does not give a shit what we want as I and others have already asked for that and other menu tweaks

This is simply not true. A while ago I asked for a quick scroll button for the emulators, and bubble quickly implemented it. Maybe a proposition may be questionable or not to the liking of him, but the dev listens.
 

wicksand420

Well-Known Member
Member
Joined
Nov 13, 2016
Messages
2,787
Trophies
1
Age
39
XP
2,296
Country
United States
So, if I have a Sonic CD bin with the music files inside it, how would I go about putting those music files in CD++ and running it on here?
I cant find a way to extract the music files from the bin, I have the sega cd game, thats how i got the music from it, i'm curious to see if there is a way to extract the music from bin also, so if you find a way, let me know.

If you do find the music files from somewhere else, use sega cue maker to make a good cue file, and open the cue file with imgburn and burn it to disc, then use imgburn's disc to img, then select to save it as a bin, or maybe mount it to a virtual drive and have imgburn make a img in bin format from that. I like having a disc copy around, so i burn it to disc.
 
Last edited by wicksand420,

Shadow#1

Wii, 3DS Softmod & Dumpster Diving Expert
Member
Joined
Nov 21, 2005
Messages
12,354
Trophies
2
XP
8,015
Country
United States
This is simply not true. A while ago I asked for a quick scroll button for the emulators, and bubble quickly implemented it. Maybe a proposition may be questionable or not to the liking of him, but the dev listens.
If he actually listened it been in 0.9.2 so there u have it people
 

zhuwz

Member
Newcomer
Joined
Jan 12, 2018
Messages
23
Trophies
0
Age
33
XP
67
Country
China
On NTSC-J:
Based on what I have read in the codes, it doesn’t seem possible to set the frame rate to 60 and have the music play at the same speed as the EUR version. The emulation is only configuration within PicoDrive as a pal or a non-pal game. No other option.

But I could be wrong. Does the PicoDrive libretro core work correctly? Can you also tell me which game has this problem?

On music:
the current release already generates music at a full 44.1khz for music on the new 3DS, but if it detects that you are running on an old 3DS, it will down sample everything to 30khz.

Which games did you mention have this stark difference in music quality?

I have tested Golden Axe III (JE) [!].bin and Streets of Rage 2 (JE) [!].bin. In default setting, PicoDrive libretro core locks the game speed in 60fps, and the game music is played too fast. I believe the game is run as EUR version, since the language is English. And since PicoDrive libretro core deliberately increase the game speed from 50fps to 60fps, the music speed is increased too and goes wrong. However, after I change region to Japan NTSC and reset the game, everything is back to normal. The language becomes Japanese, and the game speed and music speed seems all right. In Genesis libretro core, JE roms runs as JAP version by default, the language is Japanese, and the game and music speed are all right. But if I change the system region to pal, the game also gets wrongly increased music speed, since RA locks the game speed in 60fps, whereas it should be 50fps for pal version. So I believe for JE roms, the game itself can determine the game and music speed based on the console region. While the game speed changes between JAP and EUR console, the music speed stays the same. In emulator we don't need to intentionally set the game and music speed, we just need to tell the game the console region, and we will get the correct game and music speed.

As for music, I suggest you use Streets of Rage for comparison. You can compare the music of your emulator with Genesis and Picodrive libertor core, and also the e-shop 3D version. I am quite satisfied with Retroarch's sound. I notice Retroarch set Audio Output Rate to 32730hz, does is have any effect on sound quality?
 

bubble2k16

Well-Known Member
OP
Member
Joined
Jul 25, 2016
Messages
467
Trophies
0
XP
2,118
Country
Senegal
I have tested Golden Axe III (JE) [!].bin and Streets of Rage 2 (JE) [!].bin. In default setting, PicoDrive libretro core locks the game speed in 60fps, and the game music is played too fast. I believe the game is run as EUR version, since the language is English. And since PicoDrive libretro core deliberately increase the game speed from 50fps to 60fps, the music speed is increased too and goes wrong. However, after I change region to Japan NTSC and reset the game, everything is back to normal. The language becomes Japanese, and the game speed and music speed seems all right. In Genesis libretro core, JE roms runs as JAP version by default, the language is Japanese, and the game and music speed are all right. But if I change the system region to pal, the game also gets wrongly increased music speed, since RA locks the game speed in 60fps, whereas it should be 50fps for pal version. So I believe for JE roms, the game itself can determine the game and music speed based on the console region. While the game speed changes between JAP and EUR console, the music speed stays the same. In emulator we don't need to intentionally set the game and music speed, we just need to tell the game the console region, and we will get the correct game and music speed.

As for music, I suggest you use Streets of Rage for comparison. You can compare the music of your emulator with Genesis and Picodrive libertor core, and also the e-shop 3D version. I am quite satisfied with Retroarch's sound. I notice Retroarch set Audio Output Rate to 32730hz, does is have any effect on sound quality?

Oh you mean the libretro PicoDrive core allows you to change the region to NTSC-J? I'll have a look see to see what can be done.

And as for sound, even at 32730hz, it still sounds good to you? I assume you are referring to the FM synth's music correct? I'll try the Libretro's version and hear the difference for myself. :)

If he actually listened it been in 0.9.2 so there u have it people

Sorry for not implementing what you asked, but I have limited time a day and my own priorities on this freeware emulator. The most urgent ones are usually crashing bugs, compatibility (especially those that I can fix on my own), and maybe optimization issues.

If I were to change the behaviour of the B button in the file listing and remove the Left-Right switching of tabs, I'll also have to consider whether I design it in such a way where it makes sense to all other users who are already used to this emulator's UI design. I'll also have to spend additional effort to re-release the same UI feature to the rest of the my other 3 emulators. So what I do to the UI has to be really worth the effort in doing so.

So yea, since I'm doing this for fun in my spare time, I can't meet everyone's request. If the UI really bothers you, and you are a coder, you can always do a pull request and fix yourself as @Robz8 has done. But even he can attest to the fact that even if he fixes the code, no guarantee I will incorporate it to the main branch in the same way. And of course, if you don't code, you can always go back to Retroarch. :) I won't have any objections about that.
 
Joined
Jan 1, 2018
Messages
7,292
Trophies
2
XP
5,947
Country
United States
So yea, since I'm doing this for fun in my spare time, I can't meet everyone's request. If the UI really bothers you, and you are a coder, you can always do a pull request and fix yourself as @Robz8 has done. But even he can attest to the fact that even if he fixes the code, no guarantee I will incorporate it to the main branch in the same way. And of course, if you don't code, you can always go back to Retroarch. :) I won't have any objections about that.

I have a question about your signature blue GUI found across your emulators. I was thinking about picking up 3DS homebrew coding on my spare time, for the sole purpose of reverse engineering and implementing a modified version of yours onto endrift's mGBA.

I already have coding experience in C/C++, MATLAB, and LabVIEW and on top of that, PhotoShop. I have a ton of books on JAVA, C#, Python, etc (pretty much all the major and obscure coding languages), and the means to go hunt for/acquire whatever dev kit, coding package/environment, etc. Assume-ably (is that even a real word?), self-teaching myself how to additionally code and digital resources will not be the problem/limiting factor.

Understanding that programming is a tricky beast with lots of nuances and special cases, could your GUI be reasonably spliced into mGBA without significantly breaking or rewriting the parts that does the game emulation itself?
 

bubble2k16

Well-Known Member
OP
Member
Joined
Jul 25, 2016
Messages
467
Trophies
0
XP
2,118
Country
Senegal
I have a question about your signature blue GUI found across your emulators. I was thinking about picking up 3DS homebrew coding on my spare time, for the sole purpose of reverse engineering and implementing a modified version of yours onto endrift's mGBA.

I already have coding experience in C/C++, MATLAB, and LabVIEW and on top of that, PhotoShop. I have a ton of books on JAVA, C#, Python, etc (pretty much all the major and obscure coding languages), and the means to go hunt for/acquire whatever dev kit, coding package/environment, etc. Assume-ably (is that even a real word?), self-teaching myself how to additionally code and digital resources will not be the problem/limiting factor.

Understanding that programming is a tricky beast with lots of nuances and special cases, could your GUI be reasonably spliced into mGBA without significantly breaking or rewriting the parts that does the game emulation itself?

Well of course you can! But like any other open source projects, you'll definitely need some time to digest the framework. It's doesn't have the best or the most perfect library, but I think I did document enough of it so that anyone can read and understand what most parts do.

There are some tricks here and there that we use to improve speed. So you can drop me a PM anytime you need help. If I'm available I'll try to respond.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    The Real Jdbye @ The Real Jdbye: you can fap to your favorite character without it being gay