LoginLogin

Gameboy Emulator

Root / Talk About Programs / [.]

SaladFingersCreated:
EDIT: I find it super cool someone else is making a GB emulator now. I can't erase the embarrassment of SmileBOY that I left here (or rather, didn't leave here). Oh well... For everyone that's wondering what happened to SmileBOY, I never really canceled it, I just left it to collect dust on my 3DS until I was in the mood to work on it again.
Welcome back! I wouldn’t consider smileboy an embarrassment :D I have made some graphical progress by speeding up drawing significantly (but that still isn’t saying much) and by adding background scrolling. Somehow, I’ve broken Tetris, I’m not sure how that happened. And I’m curious, what is the best way to link a video here? Should I convert it to a GIF then embed it here?

EDIT: I find it super cool someone else is making a GB emulator now. I can't erase the embarrassment of SmileBOY that I left here (or rather, didn't leave here). Oh well... For everyone that's wondering what happened to SmileBOY, I never really canceled it, I just left it to collect dust on my 3DS until I was in the mood to work on it again.
Welcome back! I wouldn’t consider smileboy an embarrassment :D I have made some graphical progress by speeding up drawing significantly (but that still isn’t saying much) and by adding background scrolling. Somehow, I’ve broken Tetris, I’m not sure how that happened. And I’m curious, what is the best way to link a video here? Should I convert it to a GIF then embed it here?
If you ever want help with something, you can ask me. Of course, I'm not an expert, I just started working on SmileBOY as a hobby project to gain knowledge. I'll still be working on my own emulator, which I have made some progress for the past week. That doesn't mean we're rivals or anything, you will probably release yours earlier than me :P

Click the triangle-shaped button, and add the link of a youtube video.
Thanks! https://youtu.be/_Ng-zzBCCus Note that the video doesn’t start at the beginning of the boot ROM.
If you ever want help with something, you can ask me. Of course, I'm not an expert, I just started working on SmileBOY as a hobby project to gain knowledge. I'll still be working on my own emulator, which I have made some progress for the past week. That doesn't mean we're rivals or anything, you will probably release yours earlier than me :P
Ahh, very cool! I’ll be looking forward to what you create!

Nice!
I didn't think this would happen. Suddenly, things are happening! (Though I still don't know if this will actually be playable...)

It looks like you'll be needing to significantly improve performance in one way or another (since anything's significantly faster than 1 FPS lol), but I'm really excited to see what comes of this! It might not be the most usable thing but it'd be really cool to just see what we can do in SB. Good luck improving it further!

It looks like you'll be needing to significantly improve performance in one way or another (since anything's significantly faster than 1 FPS lol), but I'm really excited to see what comes of this! It might not be the most usable thing but it'd be really cool to just see what we can do in SB. Good luck improving it further!
Yes, I’ve been thinking about a more efficient method of drawing. I’ll probably implement it towards the end, but I think I’ll hook all writes to VRAM to create actual SmileBASIC tiles. Progress:
Spoiler
Spoiler 100% bug free

It looks like you'll be needing to significantly improve performance in one way or another (since anything's significantly faster than 1 FPS lol), but I'm really excited to see what comes of this! It might not be the most usable thing but it'd be really cool to just see what we can do in SB. Good luck improving it further!
Yes, I’ve been thinking about a more efficient method of drawing. I’ll probably implement it towards the end, but I think I’ll hook all writes to VRAM to create actual SmileBASIC tiles. Progress:
Spoiler
Spoiler 100% bug free
What I currently do is use GLOAD with a greyscale palette. However, that is pretty slow, so I hope to implement SB's built in BG tiles and sprites. Although 100% accurate emulation is impossible to achieve that way, especially if the rom uses timing to handle stuff like 3D in racing games.

What I currently do is use GLOAD with a greyscale palette. However, that is pretty slow, so I hope to implement SB's built in BG tiles and sprites. Although 100% accurate emulation is impossible to achieve that way, especially if the rom uses timing to handle stuff like 3D in racing games.
Right. I meant to say that I’d draw to a GPAGE then GCOPY a line of a tile for each scanline (forgot BGCOPY copies tiles not pixels). Anyway, I didn’t give much explanation on what I’ve been doing recently, which is running blargg CPU tests. I’ve passed the interrupts test which relieves me much. The opcode testers are slow, but I’ve been fixing and finding problems!

This made my night :) https://youtu.be/OxC5WGD00Io The speed is underwhelming.

This made my night :) https://youtu.be/OxC5WGD00Io The speed is underwhelming.
Finally it works. Kinda.

This made my night :) https://youtu.be/OxC5WGD00Io The speed is underwhelming.
Finally it works. Kinda.
This is incredible. I can't believe that's running in SmileBASIC!!! Well done so far, I can't wait to see the finished project.

This made my night :) https://youtu.be/OxC5WGD00Io The speed is underwhelming.
Plenty of reaction time though

This made my night :) https://youtu.be/OxC5WGD00Io The speed is underwhelming.
Speed improvements can come later, get it stable and we can probably do something with it as a community if you ever release it :D. Also, requires probably an MBC controller emulator which will actually involve a lot more work later but that doesn't have to be implemented by you =p. i'm amazed you got this far though, I was struggling to comprehend gameboy opcodes myself you've done what I wanted to do but didn't manage to do. Congrats. :P. Also, have you considered only updating the screen (what is displayed once every 4 frames instead of 1 frame, it may create a massive speed boost.)

This looks amazing

Can't you just use a homebrew gameboy emulator tho?

Can't you just use a homebrew gameboy emulator tho?
What about the people who don't have or want homebrew?

Can't you just use a homebrew gameboy emulator tho?
What about the people who don't have or want homebrew?
It'd probably be easier vs doing whatever hacky crap you have to do to make this work Homebrew/CFW isn't that hard to get. Hell, you used to be able to get homebrew using SmileBASIC itself!

Can't you just use a homebrew gameboy emulator tho?
This project is to see whether Game Boy emulation in SmileBASIC is entirely possible or not, not really for casual gameplay. Of course homebrew solutions would be a better idea if you want to play casually.

Can't you just use a homebrew gameboy emulator tho?
This project is to see whether Game Boy emulation in SmileBASIC is entirely possible or not, not really for casual gameplay. Of course homebrew solutions would be a better idea if you want to play casually.
Definitely. A lot of the commenters seem to be quite confused about why someone would make a gameboy emulator in smileBASIC. It will obviously never be fast enough or accurate enough to replace a good homebrew emulator or virtual console. It's just a fun experiment, and I like those.

Can't you just use a homebrew gameboy emulator tho?
This project is to see whether Game Boy emulation in SmileBASIC is entirely possible or not, not really for casual gameplay. Of course homebrew solutions would be a better idea if you want to play casually.
Definitely. A lot of the commenters seem to be quite confused about why someone would make a gameboy emulator in smileBASIC. It will obviously never be fast enough or accurate enough to replace a good homebrew emulator or virtual console. It's just a fun experiment, and I like those.
I also like them.