Register | Login
Views: 19364387
Main | Memberlist | Active users | ACS | Commons | Calendar | Online users
Ranks | FAQ | Color Chart | Photo album | IRC Chat
11-02-05 12:59 PM
1 user currently in Rom Hacking: hukka | 2 guests
Acmlm's Board - I2 Archive - Rom Hacking - Would ROM Hacks Work On the Real Deal? | |
Pages: 1 2Add to favorites | "RSS" Feed | Next newer thread | Next older thread
User Post
beneficii

Lakitu
Level: 36

Posts: 225/567
EXP: 299656
For next: 8454

Since: 06-27-04
From: Cordova, TN, USA

Since last post: 14 hours
Last activity: 6 hours
Posted on 06-28-05 12:23 PM Link | Quote
Would, say, Schwa's hack of Super Mario Bros. 3, Chaos Control, work on the real NES? Would, say, FuSoYa's Super Demo World: The Legend Returns work on the real SNES (assuming the cartridge can hold the entire game--remember, it's expanded)? Has anybody tested this?
Kario

In Possession of a Stolen Shovel

Level: 65

Posts: 1844/2082
EXP: 2321379
For next: 14249

Since: 03-15-04
From: Texas... Yeehaw!

Since last post: 2 days
Last activity: 17 hours
Posted on 06-28-05 12:42 PM Link | Quote
I played Super Demo World on my TV, it was flippin awesome.
NetSplit

Koopa
Level: 19

Posts: 62/117
EXP: 30378
For next: 5399

Since: 04-05-04

Since last post: 1 day
Last activity: 1 hour
Posted on 06-28-05 02:04 PM Link | Quote
Depends on the hack. DahrkDaiz's Mario Adventure hack, for example? Probably not. The more extensive the hack, especially in terms of ASM, the more likely it is to mess up on real hardware. Since emulators aren't the same as the real thing (they tend to be inaccurate), they're commonly more lenient when it comes to mistakes, such as timing problems. However, level-only hacks and similar such things are very likely to work. So long as the hack only changes data and not code, the chances of it working are pretty good.
blackhole89

LOLSEALS
Moderator of ROM hacking
EmuNET IRC network admin
Head GM of TwilightRO
Level: 47

Posts: 761/971
EXP: 739208
For next: 26995

Since: 03-15-04
From: Dresden/Germany

Since last post: 14 hours
Last activity: 12 hours
Posted on 06-28-05 07:57 PM Link | Quote
Well, theoretically, they all should. A problem is though that most emulators out there don't have the limitations a real console has (e.g. SNES9x and writing to VRAM during vertical blank only), and the ROM hackers don't even notice it unless they come to try it out on "the real thing". A good example for this is BMF's latest SMO demo, which caused an ... erm ... "vertical blank overrun", i.e. screen-modifying things not getting done before the end of VBlank, through a way too long NMI (non maskable interrupt) routine (which, I believe, was caused by his palette-based ASM hack launcher).
beneficii

Lakitu
Level: 36

Posts: 226/567
EXP: 299656
For next: 8454

Since: 06-27-04
From: Cordova, TN, USA

Since last post: 14 hours
Last activity: 6 hours
Posted on 06-28-05 08:04 PM Link | Quote
Originally posted by blackhole89
Well, theoretically, they all should. A problem is though that most emulators out there don't have the limitations a real console has (e.g. SNES9x and writing to VRAM during vertical blank only), and the ROM hackers don't even notice it unless they come to try it out on "the real thing". A good example for this is BMF's latest SMO demo, which caused an ... erm ... "vertical blank overrun", i.e. screen-modifying things not getting done before the end of VBlank, through a way too long NMI (non maskable interrupt) routine (which, I believe, was caused by his palette-based ASM hack launcher).


Right. You only have a certain amount of time before the NMI ends and you will want to have RTI'd by then. I personally wish emulators would at least give you the choice of being very strict. (From what I understand, LoopyNES is the strictest NES emulator, while others like NESticle aren't very strict at all.) Then again, they wouldn't be able to catch everything. Perhaps I can try DahrkDaiz's latest SMB3 hack in some different emulators? I'm unable to test it out on the real deal.

Which emulators did BMF's latest SMO (what is that?) demo run and were there any on which it didn't?
blackhole89

LOLSEALS
Moderator of ROM hacking
EmuNET IRC network admin
Head GM of TwilightRO
Level: 47

Posts: 762/971
EXP: 739208
For next: 26995

Since: 03-15-04
From: Dresden/Germany

Since last post: 14 hours
Last activity: 12 hours
Posted on 06-28-05 08:31 PM Link | Quote
SMO ran on both Snes9x and ZSNES, I believe... although I didn't test the latter much

What I know for certain is that ZSNES is being semi-strict about VRAM upload outside Vblank. Every writes that occur outside it happen to write a set byte instead of the one actually to be written to it. That makes my SMW RPG code fail on ZSNES
d4s

Panser
Level: 29

Posts: 239/325
EXP: 142151
For next: 5734

Since: 03-23-04

Since last post: 13 days
Last activity: 1 day
Posted on 06-28-05 08:34 PM Link | Quote
romhacks that include assembler modifications but were not tested on a snes are very likely to fail on the real thing, especially if the programmer isnt aware of the emulators limitations.
crucial points are, as mentioned above, vram access timing and spc700<->65816 synchronisation.

however, there are very few people(maybe 2 to 4) around here that can actually code the spc (write a music player or anything like that), so the latter one isnt too important here.

sram mapping is another minor issue that ive seen faulty implemented.

cant tell you much about nes, but i made a final fantasy 3 cart with neills english patch once and it worked like a charm on my nes.
to be honest, i dont like nes very much, though.


to actually run a hacked rom on either a snes or nes, you'd have to either use a backup unit/flashcart (not available for nes yet. memblers will have his nes flashcart for sale around juli, though.) or build a cart yourself.
you can find instructions for that on my page: http://snesdev.romhack.de


(edited by d4s on 06-28-05 11:40 AM)
Dwedit

Shyguy
Level: 17

Posts: 66/92
EXP: 20794
For next: 3949

Since: 04-26-04

Since last post: 5 days
Last activity: 1 day
Posted on 06-28-05 08:42 PM Link | Quote
The translation of "100 World Story" fails on the newer more accurate emulators. At one of the screens at the main menu, the game is guaranteed to crash. In fact, during the intro animation at one point, the translator puts 9 sprites on the screen next to each other.


(edited by Dwedit on 06-28-05 11:43 AM)
beneficii

Lakitu
Level: 36

Posts: 226/567
EXP: 299656
For next: 8454

Since: 06-27-04
From: Cordova, TN, USA

Since last post: 14 hours
Last activity: 6 hours
Posted on 06-28-05 09:32 PM Link | Quote
I'm curious, then. Would my homebrew ROM work on the real deal?

http://nesdev.parodius.com/bkg.zip

Does anybody have a way of testing it? In every emulator, btw, I've tested it out on it works.

DahrkDaiz's SMB3DX works on LoopyNES, Nintendulator (which is supposed to be the most accurate), etc.

The ASM hack I posted for the starting spaces in SMB3 (and which will be implemented in my editor) I think takes place when the screen is off, so it probably would work on the real deal.

d4s,

I know Memblers. I remember we worked on the NESDEVPROJECT together about a year and a half ago before FrenziedPanda's lack of capable leadership crashed it. Perhaps I can ask him about testing it.

From your story, it seems like you're capable of testing out NES roms. Might you test out my bkg? It requires no mapper and it works on every emulator.
redrum

Micro-Goomba
Level: 6

Posts: 6/12
EXP: 875
For next: 32

Since: 08-16-04
From: forest of silence

Since last post: 40 days
Last activity: 37 days
Posted on 06-29-05 10:56 AM Link | Quote
i heard about a few versions of my works converted into NES>GBA compilations...

the romdump i received didnt turn out very stable, but from what i hear it works with the hardware
KawaiiImoto-e

Hammer Brother
Level: 49

Posts: 825/1068
EXP: 852917
For next: 30966

Since: 03-15-04
From: In my own little complicated dreamworld

Since last post: 16 days
Last activity: 4 days
Posted on 06-29-05 12:43 PM Link | Quote
Many Mario World Hacks work on a Real SNES.
Super Demo World TLC is limited cos of its size, Marios O. works on a NTSC SNES, crashes on the titlescreen on a PAL SNES. (According to BMF it worked on a NTSC SNES, according to me not on a PAL SNES).
Sukasa

Boomboom
Error 349857348734534: The system experienced an error.
Level: 57

Posts: 1067/1981
EXP: 1446921
For next: 39007

Since: 02-06-05
From: *Shrug*

Since last post: 6 days
Last activity: 1 day
Posted on 06-29-05 12:50 PM Link | Quote
SMO was hardcoded timing-wise to the NTSC timings. That's why the PAL SNES won't work with it.
BMF98567
BLACK HAS BUILT A SILLY DICE-MAZE!
GO!

Current list of BURNING FURY >8( recipients:
- Yiffy Kitten (x2)
- Xkeeper
Level: 53

Posts: 953/1261
EXP: 1094149
For next: 62970

Since: 03-15-04
From: Blobaria
Special Move: Rising Meatloaf Backhand Combo

Since last post: 21 hours
Last activity: 1 hour
Posted on 06-29-05 03:01 PM Link | Quote
I have a Legend of the Blob Bros. 2 cartridge that works 100% properly on a real NES. However, that hack has only a few very small ASM modifications, as I was just learning it at the time.

SMO, on the other hand...bleh. I'd like to find out exactly what part of my code causes it to crash a real SNES (little help, d4s? blackhole?). I kinda doubt it's the palette-based ASM code, since I'm pretty sure I placed it outside the NMI routines. The HDMA code, on the other hand...that could very well be an issue. Being the SNES n00b that I am, I think I stuck that in NMI because its previous location was causing glitches whenever the game slowed down. Do some of Fu's hacks (animated tiles and whatnot) run during VBlank as well?
DahrkDaiz

Red Super Koopa

Acmlm's Mosts 2005
Best ROM Hacker

Level: 45

Posts: 693/885
EXP: 643520
For next: 16644

Since: 03-15-04
From: K-Town

Since last post: 4 hours
Last activity: 4 hours
Posted on 06-29-05 05:32 PM Link | Quote
The amount of ASM hacks has no bearing on whether a hack will work on the real hardware or not. SMB3DX ASM modifications far surpass Mario Adventure's ASM modifcations, yet, SMB3DX would work on the real thing and Mario Adventure would not. Mario Adventure breaks a few rules that a few emulators don't follow but SMB3DX follows all the rules.


(edited by blackhole89 on 06-29-05 08:46 AM)
blackhole89

LOLSEALS
Moderator of ROM hacking
EmuNET IRC network admin
Head GM of TwilightRO
Level: 47

Posts: 764/971
EXP: 739208
For next: 26995

Since: 03-15-04
From: Dresden/Germany

Since last post: 14 hours
Last activity: 12 hours
Posted on 06-29-05 05:51 PM Link | Quote
@BMF, I'll have a look at it (Snes9x's source is freely available, so it shouldn't be too tough to recode it in order to make it follow the SNES hardware limitations strictly). Can't ensure you I actually find the issue though.

@DD, added in a missing period in your post. Also, there is no direct influence of the amount of ASM hacks on whether the hack runs on a real SNES... after all, an SNES game could be considered an ASM-hacked nothing ... but it still can do so indirectly if you, for instance, exceed the time given for the execution of screen-modifying code (i.e. Vblank).
d4s

Panser
Level: 29

Posts: 240/325
EXP: 142151
For next: 5734

Since: 03-23-04

Since last post: 13 days
Last activity: 1 day
Posted on 06-29-05 10:56 PM Link | Quote
Originally posted by BMF54123
I have a Legend of the Blob Bros. 2 cartridge that works 100% properly on a real NES. However, that hack has only a few very small ASM modifications, as I was just learning it at the time.

SMO, on the other hand...bleh. I'd like to find out exactly what part of my code causes it to crash a real SNES (little help, d4s? blackhole?). I kinda doubt it's the palette-based ASM code, since I'm pretty sure I placed it outside the NMI routines. The HDMA code, on the other hand...that could very well be an issue. Being the SNES n00b that I am, I think I stuck that in NMI because its previous location was causing glitches whenever the game slowed down. Do some of Fu's hacks (animated tiles and whatnot) run during VBlank as well?


snes n00b?
i'd never call anybody who can drive the 65816 a snes noob
what you did was very cool, its not your fault its kinda hard to get stuff running on the snes.
i can do in-depth testing on your hack if you like.
this is what i remember from my short tests some months ago:

your hack crashes right away at the title screen.
after adding my fastrom patch, it passes the title screen and you can play fine until you collect a coin.

the most likely reason is that you exceed the available vblank time.
i dont know yet about the coin thingie.

fus hacks can run out of vblank time aswell but they dont do that per s


(edited by d4s on 06-29-05 02:10 PM)
HyperLamer
<||bass> and this was the soloution i thought of that was guarinteed to piss off the greatest amount of people

Sesshomaru
Tamaranian

Level: 118

Posts: 5366/8210
EXP: 18171887
For next: 211027

Since: 03-15-04
From: Canada, w00t!
LOL FAD

Since last post: 2 hours
Last activity: 2 hours
Posted on 06-30-05 02:33 AM Link | Quote
I think SNES (or possibly NES) can easily be modded to have a 50/60hz switch.

Also, if it was purely ASM hack count, well... any ROM you edit in Lunar Magic will have more ASM hacks than a lot of complete hacks of other games. It's not quantity, it's quality. You could have 5898345 changes to the original code but if your new code makes sure to do things right, it'll work fine on a real SNES. And even one ASM hack (or for that matter, buggy original code) can cause the game to crash on a real SNES (or even an emulator if they were more accurate and followed the restrictions) if done wrong.
beneficii

Lakitu
Level: 36

Posts: 234/567
EXP: 299656
For next: 8454

Since: 06-27-04
From: Cordova, TN, USA

Since last post: 14 hours
Last activity: 6 hours
Posted on 06-30-05 02:39 AM Link | Quote
Originally posted by HyperHacker
I think SNES (or possibly NES) can easily be modded to have a 50/60hz switch.

Also, if it was purely ASM hack count, well... any ROM you edit in Lunar Magic will have more ASM hacks than a lot of complete hacks of other games. It's not quantity, it's quality. You could have 5898345 changes to the original code but if your new code makes sure to do things right, it'll work fine on a real SNES. And even one ASM hack (or for that matter, buggy original code) can cause the game to crash on a real SNES (or even an emulator if they were more accurate and followed the restrictions) if done wrong.


How about an original homebrew game written for the old Nintendo (like my BKG graphics test) whose author went to painstaking lengths to do everything right? What's the chance of that working?
HyperLamer
<||bass> and this was the soloution i thought of that was guarinteed to piss off the greatest amount of people

Sesshomaru
Tamaranian

Level: 118

Posts: 5373/8210
EXP: 18171887
For next: 211027

Since: 03-15-04
From: Canada, w00t!
LOL FAD

Since last post: 2 hours
Last activity: 2 hours
Posted on 06-30-05 04:21 AM Link | Quote
If it's programmed right, it should.
d4s

Panser
Level: 29

Posts: 241/325
EXP: 142151
For next: 5734

Since: 03-23-04

Since last post: 13 days
Last activity: 1 day
Posted on 06-30-05 04:23 AM Link | Quote
Originally posted by HyperHacker
I think SNES (or possibly NES) can easily be modded to have a 50/60hz switch..


the snes can easily be modified to output either 50 or 60hz, thats a know fact.
im talking about nes, though.
theres no way to get 50hz video output from a ntsc nes/fc or vice versa as they use different ppus.

nesclones-on-a-chip(newer ones) have a pin on the cpu that determines the video mode so they are actually pretty handy.
due to the chip being a gloptop, its usually hard to access the pin if the designers of the pcb didnt route it to a solder bridge or a jumper.

Originally posted by beneficii

How about an original homebrew game written for the old Nintendo (like my BKG graphics test) whose author went to painstaking lengths to do everything right? What's the chance of that working?


this has nothing to do with chance or luck.
no matter how hard you try, sometimes you just overlook something by accident.
all im saying is: you wont know until you test it.


[edit]
just tested out bmfs mario odyssey.
applying my fastrom patch before or after bmfs patch didnt help much.
the game usually crashes 3-4 seconds after entering a level.
it works a little bit better (longer) in pal mode (because pal 50hz has longer vblanks), but not very good either, maybe 6 or 7 seconds.
if you need advice on how to optimize your nmi handler, feel free to pm me.
however, i dont feel like wading through all the code without knowing whats yours and whats not, so youll have to tell me first where you made changes.
vram uploads are the crucial points here, of course.



(edited by d4s on 06-29-05 07:24 PM)
(edited by d4s on 06-29-05 08:10 PM)
Pages: 1 2Add to favorites | "RSS" Feed | Next newer thread | Next older thread
Acmlm's Board - I2 Archive - Rom Hacking - Would ROM Hacks Work On the Real Deal? | |


ABII


AcmlmBoard vl.ol (11-01-05)
© 2000-2005 Acmlm, Emuz, et al



Page rendered in 0.022 seconds.