News:

As a consequence of the forum being updated and repaired, the chatbox has been lost.
However, you can still come say hi on our Discord server!

Main Menu

Some idea I had

Started by Luna_blade, 17, August, 2016, 07:20:25 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Luna_blade

So yeah. I was thinking about emulators ROM's and stuff.
AFAIK there are no roms converted to a PC executable file.
Why not? It does take some time to translate all ROM commands to another Programming language, but so does making an emulator.
The big difference is that the graphics part needs to be designed specially and that you only work on one ROM.
But the advantage is that you can edit the game a lot easier and it would certainly run faster.

Is it even possible to convert a ROM?
"Hear the sounds and melodies
Of rilets flowing down
They're the verlasting songs
Whispering all the time
As a warning that behind some rocks
There's a rigid grap even
Oreads fear the tread"

Daddy Poi's Oily Gorillas

#1
It may be possible, but it is likely difficult? (Esp. if 100% automated.)

@100%: I think one of the biggest challenges to automating the process might be knowing what's code and what is not? (One example is to imagine a pointer table of functions (Not all functions, just a group of them.)... and then an index that grabs a pointer... where the index doesn't have a cap.(Superstar Saga and Golden Sun do have pointer tables to a group of functions, for example.)

Not sure how much easier it would be to edit if you still have to manually put in all the names for functions/variables/etc. though. And with compiler optimizations, the flow may not look right either? Etc. (Depends on if said game has any of that info or not, likely not... if we're talking about things like GBA.)

But I suppose another question is: Is it worth it? When you could rewrite the whole thing anyway... in which it'd be even easier to read.)


---
Oh, and if I recall correctly... Making a GBA emulator is pretty easy in comparison to a DS or 3DS emulator... which is harder due to more stuff needing to be coded.
Golden Sun Docs: Broken Seal - The Lost Age - Dark Dawn | Mario Sports Docs: Mario Golf & Mario Tennis | Misc. Docs
Refer to Yoshi's Lighthouse for any M&L hacking needs...

Sometimes I like to compare apples to oranges. (Figuratively) ... They are both fruits, but which one would you eat more? (If taken literally, I'd probably choose apples.)
Maybe it is over-analyzing, but it doesn't mean the information is useless.


The only GS Discord servers with significance are:
Golden Sun Hacking Community
GS Speedrunning
/r/Golden Sun
GS United Nations
Temple of Kraden

Can you believe how small the Golden Sun Community is?

2+2=5 Don't believe me? Those are rounded decimal numbers. Take that, flat earth theorists! :)

leaf

This doesn't sound terribly practical. It's mostly a semantic difference anyway. If you turn it into an executable, you're essentially making an emulator that can only run that one game. There's no real advantage to it.
[spoiler=quotes]
[9:00:50 PM] Randel Peltier: Ok...what did I do last night?
[9:01:19 PM] Kain: Something boring, repetitive, and lasted for about sixty seconds.
---
[10:45:08 AM] Salanewt: But yeah, the elemental phalluses are being... Stroked up by Saturos and co., and the energy will go towards... Mt. Muffin, where the Golden Climax will arise.
[7:28:42 PM] Salanewt: An added bonus is that Isaac and co. were trying to stop Saturos and co. because their beliefs state that Mt. Muffin should remain a virgin.
---
[9:54:21 PM] Randel Peltier: Guess the number in my head an you get to pick what I say. Number between 1-10
[9:54:28 PM] leaf: 11
[9:54:36 PM] Randel Peltier: @#$%!
---
[8:38:13 PM] Randel Peltier: Shes like this queen up on a pedastal that I have yet to court.
[8:38:29 PM] Kain: You've tried courting her.
[8:38:43 PM] leaf: and failed spectacularly
[8:38:44 PM] Randel Peltier: Ive tried...shes the best dating game ever.
---
[12:24:35 AM] Salanewt: I need to find a picture of a naked person to put on the Christmas tree next year.
---
[2:19:06 PM] Zeadra: wait... Rief's a guy???
---
[1:09:57 PM] Zeadra: well if you want to know if its a new effect or something weird, just check GS1, if side step is there maby it is the nimble dodge thing
[1:10:35 PM] Kioll: For once, you've contributed something useful.  o.O[/spoiler]

Daddy Poi's Oily Gorillas

#3
I suppose I agree with you... (in a way)... since well... Even if we did do such a conversion to allow for additional space in WRAM/IRAM/VRAM/etc... (and other features like clicking the screen.), we could still do that with the emulator instead. (But then only Homebrew/hacks would use whatever additions were added.)
Golden Sun Docs: Broken Seal - The Lost Age - Dark Dawn | Mario Sports Docs: Mario Golf & Mario Tennis | Misc. Docs
Refer to Yoshi's Lighthouse for any M&L hacking needs...

Sometimes I like to compare apples to oranges. (Figuratively) ... They are both fruits, but which one would you eat more? (If taken literally, I'd probably choose apples.)
Maybe it is over-analyzing, but it doesn't mean the information is useless.


The only GS Discord servers with significance are:
Golden Sun Hacking Community
GS Speedrunning
/r/Golden Sun
GS United Nations
Temple of Kraden

Can you believe how small the Golden Sun Community is?

2+2=5 Don't believe me? Those are rounded decimal numbers. Take that, flat earth theorists! :)

Luna_blade

Quote from: foxIt may be possible, but it is likely difficult? (Esp. if 100% automated.)

@100%: I think one of the biggest challenges to automating the process might be knowing what's code and what is not? (One example is to imagine a pointer table of functions (Not all functions, just a group of them.)... and then an index that grabs a pointer... where the index doesn't have a cap.(Superstar Saga and Golden Sun do have pointer tables to a group of functions, for example.)

Not sure how much easier it would be to edit if you still have to manually put in all the names for functions/variables/etc. though. And with compiler optimizations, the flow may not look right either? Etc. (Depends on if said game has any of that info or not, likely not... if we're talking about things like GBA.)

But I suppose another question is: Is it worth it? When you could rewrite the whole thing anyway... in which it'd be even easier to read).
So if I understand correctly, emulators put the ROM in the RAM (and some even don't) but only convert the commands while executing?
Quote from: foxOh, and if I recall correctly... Making a GBA emulator is pretty easy in comparison to a DS or 3DS emulator... which is harder due to more stuff needing to be coded.
I can understand that.
Quote from: leafThis doesn't sound terribly practical. It's mostly a semantic difference anyway. If you turn it into an executable, you're essentially making an emulator that can only run that one game. There's no real advantage to it.
Well okay, but wouldn't it go faster because there is no overhead from the emulator?
"Hear the sounds and melodies
Of rilets flowing down
They're the verlasting songs
Whispering all the time
As a warning that behind some rocks
There's a rigid grap even
Oreads fear the tread"

leaf

Run... faster...? Are you out of your mind? Suppose for a moment that it actually did run faster. What possible benefit could you gain from that? It's already more than possible to play games at 1600% speed in VBA, which is already fast enough to be impossible to accurately play (as a human, that is; the game still emulates correctly). As it is, games already need a frame limiter just to prevent them from going at out of control high speeds due to the processing power of modern computers.

And you still seem to be missing the point that in order to play a game on PC that was built for a different set of hardware, you still need some form of emulation to act as the go-between. Games are optimized for the systems they're built for. This is especially true for old gameboy titles, which weren't made to be portable to other systems. The commands work at a very low level, going so far as to tell the system what registers to use to do something. It's not like we have C++ code or something that we can just compile and run on a PC; we're stuck with already-compiled code that's made to run on a specific set of hardware. Emulators work by essentially tricking the ROM into thinking it's working on the actual hardware, and then intercepting its outputs to convert them into a more PC-friendly state. It's not as simple as just telling it to output its display to a computer monitor instead of the gameboy screen, or changing a few variables to let it receive input from a keyboard. Without access to the source code, that's nontrivial even for modern games, which are specifically built to be cross-platform.

[spoiler=quotes]
[9:00:50 PM] Randel Peltier: Ok...what did I do last night?
[9:01:19 PM] Kain: Something boring, repetitive, and lasted for about sixty seconds.
---
[10:45:08 AM] Salanewt: But yeah, the elemental phalluses are being... Stroked up by Saturos and co., and the energy will go towards... Mt. Muffin, where the Golden Climax will arise.
[7:28:42 PM] Salanewt: An added bonus is that Isaac and co. were trying to stop Saturos and co. because their beliefs state that Mt. Muffin should remain a virgin.
---
[9:54:21 PM] Randel Peltier: Guess the number in my head an you get to pick what I say. Number between 1-10
[9:54:28 PM] leaf: 11
[9:54:36 PM] Randel Peltier: @#$%!
---
[8:38:13 PM] Randel Peltier: Shes like this queen up on a pedastal that I have yet to court.
[8:38:29 PM] Kain: You've tried courting her.
[8:38:43 PM] leaf: and failed spectacularly
[8:38:44 PM] Randel Peltier: Ive tried...shes the best dating game ever.
---
[12:24:35 AM] Salanewt: I need to find a picture of a naked person to put on the Christmas tree next year.
---
[2:19:06 PM] Zeadra: wait... Rief's a guy???
---
[1:09:57 PM] Zeadra: well if you want to know if its a new effect or something weird, just check GS1, if side step is there maby it is the nimble dodge thing
[1:10:35 PM] Kioll: For once, you've contributed something useful.  o.O[/spoiler]

Daddy Poi's Oily Gorillas

#6
QuoteSo if I understand correctly, emulators put the ROM in the RAM (and some even don't) but only convert the commands while executing?
Something like that. (Although, the real hardware likely reads straight off the cartridge (GBA has it memory mapped) and/or loads files at a time (like the DS)....)

"Faster" in the sense of human perception for VBA is likely pointless... But perhaps it was a matter of wrong word choice? Like say... how about more efficient? Can never get enough of savings from power consumption/ battery life, can you? (But the effort on work for too little of gains is probably not worth the time... esp. when you consider Moore's Law is already halving the size of the transistors each couple years... or something like that-ish. There are articles on the internet that say that may be coming close to an end, though.... But I'm sure the work on improvements when including tech as a whole, is far from over.) Also, things like solar panels that get power from the sun, thus making electricity potentially money-free in the long run... may make the savings seem nearly pointless. (Eventually./Hopefully.)

I can practically imagine a day in the future... when internet may be free. (Like internet.org)... and also, how computers could possibly be mainly display/sound devices... (With some RAM, obviously, etc.)  where the processor stuff happens over the internet/cloud... and we all know how fast Google servers are, right?  Didn't Google have some cheap Chromebook like that, forget now.
Golden Sun Docs: Broken Seal - The Lost Age - Dark Dawn | Mario Sports Docs: Mario Golf & Mario Tennis | Misc. Docs
Refer to Yoshi's Lighthouse for any M&L hacking needs...

Sometimes I like to compare apples to oranges. (Figuratively) ... They are both fruits, but which one would you eat more? (If taken literally, I'd probably choose apples.)
Maybe it is over-analyzing, but it doesn't mean the information is useless.


The only GS Discord servers with significance are:
Golden Sun Hacking Community
GS Speedrunning
/r/Golden Sun
GS United Nations
Temple of Kraden

Can you believe how small the Golden Sun Community is?

2+2=5 Don't believe me? Those are rounded decimal numbers. Take that, flat earth theorists! :)

Luna_blade

I see why this doesn't work now.
"Hear the sounds and melodies
Of rilets flowing down
They're the verlasting songs
Whispering all the time
As a warning that behind some rocks
There's a rigid grap even
Oreads fear the tread"