Homebrew Emulation GameYob, a gameboy emulator for DS

xdpirate

Member
Newcomer
Joined
Sep 8, 2008
Messages
23
Trophies
0
XP
175
Country
Norway
Functions pointers in console.cpp need to take a parameter even if they don't need one, since some options have multiple values. But it seems to work now.
Ah, that's right. Thanks for the merge, just tested it on my R4i with Wood R4, works wonderfully.

Edit: Updated console.cpp again, just figured out that calling exit(0) or returning from main on a card that *does not support* the Exit-to-Menu protocol, will actually reboot the console, so there's no need to have a separate function for it, just clarify what the menu option will do.
 

Drenn

Well-Known Member
OP
Member
Joined
Feb 22, 2013
Messages
574
Trophies
0
XP
696
Country
Canada
Is the rumble feature present in GameYob v0.3-12? It doesn't seem to be.
It should be. But I examined Pokemon Pinball in bgb and saw that it's not writing any values that would trigger rumble according to LemonBoy's implementation. I guess it's not working properly yet.

Edit: Star Wars Episode 1: Racer, on the other hand, should work. In theory.

What games are you trying it with?
 

sverx

a DS homebrewer
Newcomer
Joined
Dec 23, 2008
Messages
32
Trophies
0
Website
adshomebrewersdiary.blogspot.com
XP
108
Country
Italy
As it turns out, smooth scaling in hardware is a piece of cake. Just make 2 background layers using the same image, offset them by a fraction of a pixel, and blend them. I'm experimenting with this right now, and the scaling filter looks very similar to Lameboy. I haven't uploaded this yet.

Actually that was to scale a 320 pixel wide image to a 256 wide one (so it's 5->4). Are you doing the same with 240 to 256? It won't work so easily I think :unsure:
 

Drenn

Well-Known Member
OP
Member
Joined
Feb 22, 2013
Messages
574
Trophies
0
XP
696
Country
Canada
Actually that was to scale a 320 pixel wide image to a 256 wide one (so it's 5->4). Are you doing the same with 240 to 256? It won't work so easily I think :unsure:
Well I'm convinced this is what Lameboy is doing. It's probably the best way to do it in hardware. (But I'm open to alternatives!) I'm actually scaling from 144 to 192 (vertically) and 160 to about 213 pixels (horizontally), when preserving the aspect ratio. The numbers aren't cleanly calculated at all, like how you calculated what fractions of colors each resulting pixel should have. I didn't do that. But it looks okay. You can try it with the latest "newgfx" build now if you want.
 

RupeeClock

Colors 3D Snivy!
Member
Joined
May 15, 2008
Messages
6,497
Trophies
1
Age
34
Website
Visit site
XP
2,968
Country
It should be. But I examined Pokemon Pinball in bgb and saw that it's not writing any values that would trigger rumble according to LemonBoy's implementation. I guess it's not working properly yet.

Edit: Star Wars Episode 1: Racer, on the other hand, should work. In theory.

What games are you trying it with?
That was the only game I tried, Pokémon Pinball.
I didn't know of any others to try, I thought that Rumble may be a visible option in the emulator menu.
 

sverx

a DS homebrewer
Newcomer
Joined
Dec 23, 2008
Messages
32
Trophies
0
Website
adshomebrewersdiary.blogspot.com
XP
108
Country
Italy
I'm actually scaling from 144 to 192 (vertically) and 160 to about 213 pixels (horizontally), when preserving the aspect ratio. The numbers aren't cleanly calculated at all, like how you calculated what fractions of colors each resulting pixel should have. I didn't do that. But it looks okay.

Ops, I misunderstood. I thught it was a GBA emulator :wacko:
So 144 to 192 should be something like 3->4 ... how do you expect the 4 resulting pixels to be? (I mean, compared to the 3 original pixels) I guess you don't simply want to double the pixel in the middle, right? :wink:
 

Deleted member 319809

MAH BOI/GURL
Member
Joined
Dec 22, 2012
Messages
900
Trophies
0
XP
461
Country
Canada
Ops, I misunderstood. I thught it was a GBA emulator :wacko:
So 144 to 192 should be something like 3->4 ... how do you expect the 4 resulting pixels to be? (I mean, compared to the 3 original pixels) I guess you don't simply want to double the pixel in the middle, right? :wink:
That's a bit how the DS hardware does it when you don't ask it to filter pixels, yes.
 

Clydefrosch

Well-Known Member
Member
Joined
Jan 2, 2009
Messages
6,024
Trophies
2
XP
4,631
Country
Germany
for some reason, it always dropped to 50 frames in the town for me.
and it often feels like the game has just the slightest input lag... but that may be natural for the game.


still plays much more fluid than it did back on the psp.
whats the secret here anyway? why is it working so much better than most other emulators?
 

Drenn

Well-Known Member
OP
Member
Joined
Feb 22, 2013
Messages
574
Trophies
0
XP
696
Country
Canada
That was the only game I tried, Pokémon Pinball.
I didn't know of any others to try, I thought that Rumble may be a visible option in the emulator menu.
The option isn't toggleable yet, but it does exist.
In vanilla game boy black and white, would sub-pixel rendering be an option? Or would the hardware choke? I only mention the old GB as sub-pixel would destroy coloration in GBC games
You mean to help with scaling? I never heard of this technique until googling it just now. Sounds interesting, but it would require doing scaling in software. I'd rather use the DS hardware so there's no penalty to speed.
for some reason, it always dropped to 50 frames in the town for me.
and it often feels like the game has just the slightest input lag... but that may be natural for the game.


still plays much more fluid than it did back on the psp.
whats the secret here anyway? why is it working so much better than most other emulators?
Odd. If you're using the official version 0.3 it should be (just barely) a smooth 60 fps in most cases. I dunno why it doesn't have graphical glitches like other emulators apparently have. I never had any major issues with this game aside from speed. In that regard, it helps that graphics are rendered with the ds's hardware. I'm moving away from this approach so speed could go down.
Ops, I misunderstood. I thught it was a GBA emulator :wacko:
So 144 to 192 should be something like 3->4 ... how do you expect the 4 resulting pixels to be? (I mean, compared to the 3 original pixels) I guess you don't simply want to double the pixel in the middle, right? :wink:
Well I'd have to consider it as blocks of 3x3 -> 4x4 wouldn't I, since there's vertical scaling too? I tried drawing it out, it's... complicated. I'd have to round out some of the ratios to quarters or else I'd need more than 4 backgrounds. In the new 4x4 square, the corners would be whole pixels, the sides would be half pixels, the insides would end up as quarter pixels (rounded out from other weird ratios). I dunno if it's even possible to offset the backgrounds properly to get those numbers.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    Materia_tofu @ Materia_tofu: this is true! i learned how to make soundfont remixes from a friend back in 2021 +1