Discuss Scratch

  • Discussion Forums
  • » Advanced Topics
  • » Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development [RSS Feed]
oxiti8
Scratcher
500+ posts

Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development



Wave Multi-Emulator Collaboration

Current version: V0.7.9

GitHub: https://github.com/NinjaWeedle/Wave-Multi-Emulator

SUPPORT FOR: CHIP8, hi-res CHIP8, SuperChip, XO-CHIP 1.1, HyperWaveCHIP-64, UHWEI*, Game Boy, NES
Partial support (games run albeit with issues or major portions of device being emulated are unimplemented) for: Nintendo DS, HYPERCHIP-64(no 4 voice audio or 4 plane support), Bytepusher, Game Boy Color
Pre-alpha support for (some code exists but it doesn't really run anything): Game Boy Advance, Goddess A, Mega-Chip 8
Not implemented yet: Nintendo 64
*Ultimate Hello, World Esolang Interpreter isn't really an emulator but is used as a sort of command line interface for Wave

Wave Multi-Emulator is not one emulator, but many. The concept is similar to Retroarch's core system: The project has a main gui for loading roms and emulators, and the emulators themselves are each contained in their own respective sprite(s) (In the case of the DS, two sprites).

Of course, the main thing that separates Wave from other emulators done in Scratch is the collaboration aspect- So far, around 5-6 people have pitched in:
@Geotale/@EmulatorsOnScratch started the project in June of 2020, and has worked on the CHIP8, Gameboy, GBA, and DS emulators.

@Executec joined soon after, mainly working on the gui and doing a small bit of work on the Gameboy emulator (plus a few other things.


I jumped on in October 2020, and since then, I've made major overhauls to the GUI, added Superchip, hi-res chip8, and XO-CHIP support, as well as numerous bugfixes.


In October 2021, @52525rr ported his WIP Game Boy emulator, DualGB, to Wave as part of V0.6 - Multi-Platform Edition.

Now we reach the present. Lots of updates with Wave in December- V0.7 has released with Cool NES by @GenericHeroGuy & Bytepusher by @52525rr, and the return of @Executec with the release of Wave V0.7.3!

The current generation is Super 7X- a remix of Executec's remix of 7X. Mega-Chip support is currently in the works, and V0.8 is being planned out.

Here are the project's goals for the future- this is subject to change, and because of that I'm ranking each potential feature on a scale of 1-3 based on how likely they are to appear (1 being least likely, 2 being planned and/or actively worked on by someone but may not appear in this version, 3 being confirmed/being actively worked on by me):


V0.7.X: Bugfixes. This version will likely be deprecated once I begin shifting my focus to V0.8.

V0.8: revamped rom importer (3), the addition of Mega-Chip support to WAVE-8 (2), Updating the Cool NES core from 2.2 to 2.4 (2, Depends on GenericHeroGuy though) and the addition of Executec's WIP “basic, portable Scratch programming language”. (2 because it may get pushed back to V0.9)
ETA: Early/Mid February 2022

V0.9: Savestates (1), full HYPERCHIP-64 support (2)
ETA: 2022

V1.0: Stability?
ETA: Unknown


If you would like to help, please do! Welcome further GUI suggestions, and new emulators would be great! Even if you don’t know a thing about emulation, you can still help create backgrounds and borders for the emulators. Suggestions welcome. If you're interested, go to the official studio here and leave a comment!

How do I run games in Wave?
Scratch can't read uploaded files directly from the player- Wave works around this by having the user first convert their roms into either hex or base64 (depending on the emulator), and then having them paste the hex or base64-converted rom into a dialog box. You can then just open the emulator you want to use, and the game should load. (Size limits apply for anything above XO-CHIP, ESPECIALLY for DS)

Last edited by oxiti8 (Jan. 19, 2022 17:48:32)

oxiti8
Scratcher
500+ posts

Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development

Known CHIP-8 compatibility issues as of V0.7.9:

keyboard reporting wrong keys FIXED IN V0.5.1!

CHIP-8
Animal Race- text and sprites display garbled, no quirks fix display issues. Game still runs.
Danm8ku- Needs Load/save/ Shift quirks active. Game can get past title, but no obstacles spawn and the player's ship only half renders. Ingame.

SuperChip8
Ant - The Search for Coke. FIXED! Now playable as of V0.6.5.
(Old) Workaround for Wave V0.4.9: Fix press 0 to disable wrapping and collision, move the ant away from the wall, and then press 0 to reenable wrapping and collisions. This option is not available in Wave 0.5.X.
Boot 128 - FIXED! Now playable as of V0.7.6. You must set the starting address to 256 in UHWEI by typing “set start address” and then “256”. You then need to exit UHWEI by typing “exit”, then launch WAVE-8. Boot-128 will then run!.

XO-CHIP
none

If a game plays wrong and isn't listed here, try different combinations of load/save, shift, and SF2091! fixes first. If the game doesn't work after trying all other quirks, press 0 If the game still doesn't work, post the game's title in this thread!

Last edited by oxiti8 (Jan. 15, 2022 22:50:44)

ScratchCatHELLO
Scratcher
1000+ posts

Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development

how do people even make things like this??
I would check it out, but I'm a little worried firefox might not be as interested in it as I am.

enter command
West of House
This is an open field west of a white house, with a boarded front door.
There is a small mailbox here.
A rubber mat saying 'Welcome to Zork!' lies by the door.

>examine mailbox
I see nothing special about the mailbox.

>
















Python 3 Text Adventure
cool new browser game - cursed laughing-crying emoji - Illuminati - you know waterbenders, but do you know stock-imagebenders? - snek - vibin' - Bump song (vevo) - Speed bump - yee - fred - m i c k e y



ScratchCatHELLO
I have 4300+ posts, I've been on scratch for 3 years, I'm a Forum Helper™ and I have a Scratch Wiki account!
I like: Python, CSS, Javascript, Rust

oxiti8
Scratcher
500+ posts

Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development

ScratchCatHELLO wrote:

how do people even make things like this??
I would check it out, but I'm a little worried firefox might not be as interested in it as I am.
It should load fine, the project is only 6.7 Megabytes. Just don't try to load DS
Barthdry
Scratcher
500+ posts

Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development

Can you please make a youtube tutorial or wiki tutorial on how to make things like this because i love to make amazing projects like this which can load rom cartiledges
oxiti8
Scratcher
500+ posts

Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development

Barthdry wrote:

Can you please make a youtube tutorial or wiki tutorial on how to make things like this because i love to make amazing projects like this which can load rom cartiledges
I could make a video overview of how to do a Chip-8 emulator in scratch, it wouldn’t delve super deep into the actual code since there are a variety of ways to do one but I would-have things like “how to parse a hex string formatted rom” and things like how to setup memory and dealing with DXYN. No promises but I may be able to crank a video out over the summer.
oxiti8
Scratcher
500+ posts

Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development

V0.4.8 Update notes

Main menu updates-
- Menu tiles now scroll at the same speed in Turbowarp's 60 fps mode as they do in vanilla Scratch's 30 fps.

Emulator updates:

Chip 8: You can now hit 0 to enable and disable collisions & Wrapping. The vast majority of games don't need this, but disabling wrapping and collisions at the start of Ant: The search for Coke fixes the immediate death issue. Once you move past the left wall, press 0 again to re-enable collisions and wrapping. NOTE: Wrapping and collisions are enabled by default.

I've been working on Gameboy emulation on and off, progress is slow.
kccuber
Scratcher
1000+ posts

Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development

ScratchCatHELLO wrote:

I would check it out, but I'm a little worried firefox might not be as interested in it as I am.
Aw man, your tab crashed!

I'm pretty excited about GBA so i can play the actual version of griffpatch's tile scrolling platformer


Made using Nord Theme & Inkscape
oxiti8
Scratcher
500+ posts

Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development

kccuber wrote:

I'm pretty excited about GBA so i can play the actual version of griffpatch's tile scrolling platformer
GBA is sourced from Geotale's GBA Emulator v0.0.5, GBA is definitely beyond my abilities at the moment so I can't say when or even if that one will get retail games running, that would moreso depend on Geotale's efforts.
GerekRulesGwof
Scratcher
500+ posts

Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development

exactly how do i convert a ds rom? i want to try and run a flipnote studio rom i have on there

This is my signature.

My signature was eaten by the Scratch Team, they removed it lol
oxiti8
Scratcher
500+ posts

Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development

GerekRulesGwof wrote:

exactly how do i convert a ds rom? i want to try and run a flipnote studio rom i have on there
To import a DS rom, convert it to hex, then type “NDS” in the rom import prompt. Next, paste your hex converted NDS rom.
GerekRulesGwof
Scratcher
500+ posts

Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development

ok

This is my signature.

My signature was eaten by the Scratch Team, they removed it lol
GerekRulesGwof
Scratcher
500+ posts

Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development

lol i tried to convert the smallest game possible - game and watch collection, which is around 8 megabytes, and now that it is converted it is 48.5 megabytes lol

This is my signature.

My signature was eaten by the Scratch Team, they removed it lol
GerekRulesGwof
Scratcher
500+ posts

Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development


It is just a blank screen, how long do I wait for?
https://www.mediafire.com/file/htei6x4obcb60hi/Game_and_Watch_Collection_DS_ROM_converted_for_Wave_multi-emulator_on_Scratch.txt/file

This is my signature.

My signature was eaten by the Scratch Team, they removed it lol
oxiti8
Scratcher
500+ posts

Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development

GerekRulesGwof wrote:

It is just a blank screen, how long do I wait for?
https://www.mediafire.com/file/htei6x4obcb60hi/Game_and_Watch_Collection_DS_ROM_converted_for_Wave_multi-emulator_on_Scratch.txt/file
It may not work at all. Scratch ha a 400,000 entry limit on lists, which may be too small for the majority of nds roms. You should try “trimming” the rom to remove empty data, As I see a ton of 0x00 in that txt file.

EDIT: Remove the commas and newlines from the file as well

Last edited by oxiti8 (July 24, 2021 15:58:13)

oxiti8
Scratcher
500+ posts

Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development

I have found this setup to work best. both Chip8 and NDS emulators can use roms with “0x”, but to save space it isn't needed.

*Note*: Unlike NDS, Chip-8 cannot use commas in its roms

Last edited by oxiti8 (July 24, 2021 16:16:09)

GerekRulesGwof
Scratcher
500+ posts

Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development

i tried to do that but unfortunately i use chrome… and the chrome browser so it instantly crashed lol. i have a “high-end” chromebook which is basically just a severely under powered windows laptop XD

This is my signature.

My signature was eaten by the Scratch Team, they removed it lol
GerekRulesGwof
Scratcher
500+ posts

Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development

maybe hex to dec as well will make it work better?

This is my signature.

My signature was eaten by the Scratch Team, they removed it lol
GerekRulesGwof
Scratcher
500+ posts

Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development

I have converted a small ROM, which is Flipnote Studio (USA) and 2.8 megabytes. I checked off both options and the resulting file size is 5.8 megabytes. However, the screen is still black and it says “UGOMEMO-V2” in the variable. You can download the files here: https://www.mediafire.com/file/0b7oo0y774bk7ln/Flipnote+Studio+(USA)+(En,Fr,Es)+ROMs.zip/file. The ROM is official and was downloaded from the DSiWare archive.

Last edited by GerekRulesGwof (Aug. 4, 2021 13:30:41)


This is my signature.

My signature was eaten by the Scratch Team, they removed it lol
kccuber
Scratcher
1000+ posts

Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development

OMW to run the emulator in microsoft edge (so firefox wont throw a tantrum)


Made using Nord Theme & Inkscape
  • Discussion Forums
  • » Advanced Topics
  • » Wave Multi-Emulator Collaboration- Combining emulators for CHIP8, Game Boy, NES, GBA, NDS, and more all into one Scratch Project. - Ver. 0.8 in development [RSS Feed]

Powered by DjangoBB

Standard | Mobile