News: 11 March 2016 - Forum Rules
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia, Danke

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - MarkGrass

Pages: [1] 2 3 4
Thanks! I learned from the best! ;)

I might hop on our old chat client soon...?

The source code to this project is now available.



You are a goddess!
Thank you for this. :)

fix'd. You're welcome and please enjoy :)

Not exactly an unused area, just stuff that tcrf has yet to document.
Mega Man 8 [PSone] Debug Menu

News Submissions / Re: ROM Hacks: Super Mario Advance 4: eReader Version
« on: January 27, 2016, 07:04:54 pm »
Very nice! :)

...but where's the infamous "B Dash de Kakenukero!" level?

Programming / Re: Emu Accuracy analysis: FCEUX vs. NEStopia
« on: October 31, 2015, 09:27:45 am »
My guess is the name bsnes was changed when the emulator became a multi-system emulator and the name no longer seemed appropriate.
At first he added the first full support for the Super Game Boy (one emulator emulating the SNES and GB at once. Though last I tried it the GB core was still a work in progress, particularly sound. This allowed things like the SNES mode in the US/EU GB Space Invaders.) Then when cracking the ST018 expansion chip, it was discovered to have an ARM-based CPU, so with the help of a GBA hacker he added GBA support. He was also took the next logical step and and began work on DS emulation but dropped it once he realized the DS was too different to continue supporting it. Not sure how the NES got added in.

byuu was working on Far East of Eden Zero, so he renamed his emulator after the main character of that game. Maybe he had other reasons, though, I can't remember.

Ah, that makes sense. I wouldn't completely disregard an emulator because of the name given to it, however, I do disregard bloatware. I wouldn't download and use a file compression utility that doubles as an internet chat messenger. That is an outrageous example, but the same principal applies.

Too much is too much.

I wouldn't recommend Higan for casual users to use.  I'd recommend SNES9X instead.  Higan is made exclusively for accuracy-enthusiasts who have the hardware and technical know-how to deal with the quirks of using it and configuring everything properly.  They also have to be willing to not bother sending suggestions to byuu and stick purely with noting bug reports if they want to contribute to development (or fork the code if they can do programming).

People can complain about Higan but it is under GPL so just fork it and stick it up on GitHub and change the stupid UI/folder system to something better.  Perhaps use the 'Performance' core by default and integrate all 3 cores as a menu option instead of seperate executables.

Good point.

It just gives me peace of mind in knowing that the author put real care and thought into development, as opposed to those who've attempted the same for the sole purpose of bragging rights. It's nice knowing that when I boot a game with Higan it will work as the original developers intended, and that's something that other emulators can't guarantee.

I do recommend Higan for ROM hackers, though. All too often, people have designed hacks using something like ZSNES as a base for testing, without even putting any thought towards whether it will work on real hardware. On the emulation side of things, Higan is as close as one can get to that. I will respect a hack that works on real hardware much better than one that doesn't, no matter the grand scheme of said hack.

...and I can write c/c++ programming language just fine and have a pretty decent understanding of video game programming and such, I just don't feel the need to take it that far.

The thing with byuu is they always march to the beat of their own drummer.  That's just how it goes; their emulator their rules in a way.  Not that I agree with it but that is how they decided to do it.  They never made Higan for the community; it was always a personal passion project.  I find it ironic that byuu expects the wider emulation community to adopt Higan as a standard when he's so openly hostile to anyone that doesn't agree with them.

I totally understand the passion project aspect, I have a few of those myself. When it comes to presenting my results to the public, I can also handle constructive criticism, though... and that's where I begin to lose respect -- byuu doesn't even begin to consider that what he's done with the file/folder thing is just flat-out absurd, especially when he expects everyone to accept it.

Sometimes, the concept just isn't acceptable. It sounds good in theory, but is absolutely horrid in standard practice. It sucks to let go of these kinds of ideas, I've had to do it myself, but if one expects everyone at large to adopt, exceptions have to be made -- not the other way around in the case of the folder/file ordeal. There are much better ways to handle the situation and telling everyone to piss off most definitely isn't the right way to go about it when you're trying to get everyone to love you.

Programming / Re: Emu Accuracy analysis: FCEUX vs. NEStopia
« on: October 30, 2015, 09:38:31 pm »
Sounds like I'll never be using it then. I just want to play and hack games. I don't want that experience to be ruined by what seems like the author's bizarre and unhealthy fixation on something that's been taken to an illogical extreme to the detriment of the user.

Please, don't let my opinion prevent you from at least trying it. Seriously.

It's a most excellent emulator! just isn't user-friendly, at all.

Programming / Re: Emu Accuracy analysis: FCEUX vs. NEStopia
« on: October 30, 2015, 08:09:16 pm »
The dedication to accuracy that byuu has put into bsnes has always interested me and definitely will always have my utmost respect. His work on special chips is still an amazing accomplishment that I will always adore.

Rather unfortunately, everything became a mess when the file/folder thing was forced upon everyone; It's completely unnecessary and inconvenient. To make matters worse, everyone who has voiced their disliking of that "feature" is typically met with a "fuck off" type of response. Stop trying to make fetch happen, it isn't going to happen.

On top of that, you're practically forced to use an external app (snespurify) to manage your rom data before you can even boot a ROM in the emulator for the first time.

Accuracy doesn't matter in emulators when one has to jump through hoops to get the darned thing to boot... and not that it matters in terms of usability, but the "bsnes" title is infinitely better than "higan".

I hate that I have these complaints, I really just wish the emulator wasn't a hassle to use.

Programming / Re: NES equivalent for VBA's disassembler?
« on: September 20, 2015, 11:52:49 am »
So for GBA games, VBA has an ASM decompiler that lets you type in a ROM offset and attempts to interpret it as ASM code.

This program will let you disassemble a NES rom from any offset. The output disassembly can be recompiled, etc.

Like Disch said, you need to use FCEUX to obtain the ROM file offsets then feed it to the app. It also expects a program counter, for example:

$C000 - Program counter
0x03C010 - ROM File Offset

Example Commandline:
x6502 label address org 0xC000 start 0x03C010 finish 0x040010 rom ".\Mega Man 2.nes" out ".\DisAsm.s"

I don't understand. If you want to see how a game plays, you certainly won't be watching a speedrun, because those plays the game as quickly as possible, often by exploiting all kind of glitches.

For me, that's the entire point.

If I truly don't give a crap about it then I definitely don't want to spend hours of my life watching a video of it. Otherwise, I'm stuck with some amateur "reviewer" who makes immature sound effects and other failed attempts at humor, and that's if I'm even lucky enough to find something about it. Or even worse, some asshole who records every their every facial expression and embeds a small view in the a corner.

Also, not every every speed run exploits known glitches.

You'll only watch a speedrun if you already know the game very well.

Thus the argument that "speedruns are free publicity for the game" is nonsense.

Yeah, well, you know, that's just like, uh, your opinion, man. ;P

There's always exceptions.

I KNOW I can't be the only person in the world who's watched a video on youtube and said to myself "This game looks way more fun than I thought it would be". That's good for business. And to go back to something I said earlier, no review could give you a realistic sense of what a game actually plays like because they are all only about a few minutes long and only graze and generalize each aspect of the game. Actually watching someone play a game is a totally different experience and will give you a more realistic impression of what a game plays like. Anyone can make a game look good or bad with a few clips and deceiving words if that is their desire.

No, you're definitely not the only person.

On a personal note, I never trust any reviewer or critic, no matter how reputable they may be. These people don't speak for me and my interests... but like you, seeing and hearing a game being sampled on YouTube can definitely change my mind about something, even if it's the most trivial of ROM hacks.

And for games that I already have, I can't tell you how many times I watched a speedrun and dug out a game that I hadn't played in a long time because a video showed me how to make the most annoying parts (that prevented me from replaying as often) much easier. I just don't see how these videos are a realistic threat. Maybe some of the hack videos could be a negligible threat to Mario Maker but not enough of a threat that Nintendo should go after these videos. They're just being childish and playing right into the "giant corporate assholes" stereotype that people love to hate.

I get what you're saying here, and I could note  few examples of this myself, however, I would argue that speed runs are absolutely awful for business. ROM hack or no ROM hack.

Personally, I only watch speed runs when I don't want to actually play the game, but I'm still interested in seeing what it's all about. The only exception to this is when I want to see that new found glitch that everyone is talking about.

And before it comes back again, for me the real issue is not whether Nintendo has a right to do this because they obviously do. "Is it worth the effort?" is the better question. Honestly, I wouldn't even care if it weren't for the fact that I like some of these videos and a number of them have either given me a greater appreciation for a game I already had or showed that a game that I didn't have was actually worth my money and attention. Nintendo is stepping on my balls...

I don't have balls for Nintendo to step upon, but this recent move is rather unsettling.

As I mentioned before, it wouldn't make any difference if they scrub all videos from the internet - it most certainly isn't going to save their current video game console and it will only help to further hurt the brand by outcasting its own fan base.

I stand by my previous statement: This is yet another dumb move by Nintendo. I'm not sure what, if anything, can redeem them at this point.

Don't get me wrong.  I pirate shit all the time.  I don't have a problem with it.  The only real difference between us is I don't feel the need to rationalize it.  I don't like fooling myself.

Yup, I feel the same.

Gemini and myself recently chatted briefly about how discovering emulation changed our lives, way back when. In one instant, one may gain access to video games that they couldn't have previously enjoyed. Whether it be poverty and the inability to purchase, outdated or out of print systems and consoles, regional hindrance and anything else unforeseen, ROM sets can really open doors for many people, creatively speaking.

That feel for me were several of the NES Mega Man games that I had only dreamed about as a child. I would later go on to purchase the entire collection, but before that, I hacked video games as means of a creative outlet in order to stay busy so that I could ditch drug and alcohol abuse. I probably couldn't have accomplished that if it weren't for piracy.

That said, I wouldn't just start downloading movies, music and games for the sake of having them for my pleasure. There's a very fine line between honest intentions and just flat-out stealing.

Censorship much, Nintendo?

Pretty dumb move to alienate the very same people who likely gave inspiration for Mario Maker, especially when the company has been in dire straits for years.

Nintendo's nostalgia machine will eventually break down completely. The very same people they depend upon to buy the same recycled ideas year after year aren't going to be around to support them forever, and the facts are everywhere to support this notion. This blatant action to shit on the fanbase is a prime example of how desperate they really are.

Even if they managed to completely scrub the entire internet of ROM hacks, nothing would be enough to save this complete flop of a video game console. The writing is on the wall.

Mario Maker most definitely looks like a lot of fun, but doesn't allow for custom AI, custom textures, custom music and so on. The right people who are interested enough will find their way.

Programming / Re: x6502 Ricoh 2A03 Disassembler
« on: September 10, 2015, 03:47:16 pm »
The original topic is located here.

I don't have Windows 10 installed on any of my computers, so I have no way of testing anything on that operating system.

It works perfectly as intended on XP, 7 (both x86 and x64) and 8 (x64)

Programming / x6502 Ricoh 2A03 Disassembler
« on: September 04, 2015, 04:15:34 pm »
x6502 is a simple commandline utility used to disassemble PRG ROM data from a NES video game.

I developed this application in order to help myself understand how 6502 processing works for the NES so that I may move on from PSone hacking. I'm not sure what the point is, but I've already laid the groundwork for 6502->R3000A conversion, as well. Furthermore, I may add a GUI in the future if I get bored enough.

Disassembled output can be used in a variety of assemblers, though it was particularly developed with Disch's "Schasm" assembler in-mind.

I'm fairly new to 6502 hacking, so don't hesitate to point out any errors.


EDIT: (Sept 05, 2015)

Version 1.1 is now available with two new optional commands.

The first optional command, label, will implement labels for each JMP, branch type and sub-routine. With this option, these address pointers are no longer hardcoded.

The second optional command, comment, will automatically add two semi-colons on each line for future commenting.

EDIT: (Sept 06, 2015)

Version 1.2 is now available with three new optional commands and a few minor bug fixes.

DATA will disassemble to #byte.

APPEND will open an existing file and append disassembly to the end of the file. Useful for Text+Data disassembly output.

ADDRESS adds commented file addresses and counters to each line.

Example output from Mega Man 3
Code: [Select]
#org $C4F8, $0003C508 ;;
LDX #$00 ;; C4F8 0003C508 ;;
STX $0019 ;; C4FA 0003C50A ;;
BRANCHC4FC: LDA $0780,X ;; C4FC 0003C50C ;;
BMI BRANCHC51C ;; C4FF 0003C50F ;;
STA $2006 ;; C501 0003C511 ;;
LDA $0781,X ;; C504 0003C514 ;;
STA $2006 ;; C507 0003C517 ;;
LDY $0782,X ;; C50A 0003C51A ;;
BRANCHC50D: LDA $0783,X ;; C50D 0003C51D ;;
STA $2007 ;; C510 0003C520 ;;
INX ;; C513 0003C523 ;;
DEY ;; C514 0003C524 ;;
BPL BRANCHC50D ;; C515 0003C525 ;;
INX ;; C517 0003C527 ;;
INX ;; C518 0003C528 ;;
INX ;; C519 0003C529 ;;
BNE BRANCHC4FC ;; C51A 0003C52A ;;
BRANCHC51C: RTS ;; C51C 0003C52C ;;

#org $C6D8, $0003C6E8, $74 ;;
#byte $58 ;; C6D8 0003C6E8 ;;
#byte $F1 ;; C6D9 0003C6E9 ;;
#byte $02 ;; C6DA 0003C6EA ;;
#byte $28 ;; C6DB 0003C6EB ;;
#byte $E0 ;; C6DC 0003C6EC ;;
#byte $F1 ;; C6DD 0003C6ED ;;
#byte $02 ;; C6DE 0003C6EE ;;
#byte $28 ;; C6DF 0003C6EF ;;
#byte $B8 ;; C6E0 0003C6F0 ;;
#byte $F1 ;; C6E1 0003C6F1 ;;
#byte $02 ;; C6E2 0003C6F2 ;;
#byte $70 ;; C6E3 0003C6F3 ;;
#byte $20 ;; C6E4 0003C6F4 ;;
#byte $F1 ;; C6E5 0003C6F5 ;;
#byte $02 ;; C6E6 0003C6F6 ;;
#byte $A0 ;; C6E7 0003C6F7 ;;
#byte $68 ;; C6E8 0003C6F8 ;;
#byte $F1 ;; C6E9 0003C6F9 ;;
#byte $02 ;; C6EA 0003C6FA ;;
#byte $D0 ;; C6EB 0003C6FB ;;
#byte $D8 ;; C6EC 0003C6FC ;;
#byte $F1 ;; C6ED 0003C6FD ;;
#byte $02 ;; C6EE 0003C6FE ;;
#byte $D0 ;; C6EF 0003C6FF ;;
#byte $90 ;; C6F0 0003C700 ;;
#byte $F2 ;; C6F1 0003C701 ;;
#byte $02 ;; C6F2 0003C702 ;;
#byte $10 ;; C6F3 0003C703 ;;
#byte $40 ;; C6F4 0003C704 ;;
#byte $F2 ;; C6F5 0003C705 ;;
#byte $02 ;; C6F6 0003C706 ;;
#byte $58 ;; C6F7 0003C707 ;;
#byte $D0 ;; C6F8 0003C708 ;;
#byte $F2 ;; C6F9 0003C709 ;;
#byte $02 ;; C6FA 0003C70A ;;
#byte $58 ;; C6FB 0003C70B ;;
#byte $78 ;; C6FC 0003C70C ;;
#byte $F2 ;; C6FD 0003C70D ;;
#byte $02 ;; C6FE 0003C70E ;;
#byte $80 ;; C6FF 0003C70F ;;
#byte $28 ;; C700 0003C710 ;;
#byte $F2 ;; C701 0003C711 ;;
#byte $02 ;; C702 0003C712 ;;
#byte $D8 ;; C703 0003C713 ;;
#byte $A8 ;; C704 0003C714 ;;
#byte $F2 ;; C705 0003C715 ;;
#byte $02 ;; C706 0003C716 ;;
#byte $D8 ;; C707 0003C717 ;;
#byte $90 ;; C708 0003C718 ;;
#byte $E4 ;; C709 0003C719 ;;
#byte $03 ;; C70A 0003C71A ;;
#byte $18 ;; C70B 0003C71B ;;
#byte $28 ;; C70C 0003C71C ;;
#byte $E4 ;; C70D 0003C71D ;;
#byte $03 ;; C70E 0003C71E ;;
#byte $20 ;; C70F 0003C71F ;;
#byte $68 ;; C710 0003C720 ;;
#byte $E4 ;; C711 0003C721 ;;
#byte $03 ;; C712 0003C722 ;;
#byte $30 ;; C713 0003C723 ;;
#byte $58 ;; C714 0003C724 ;;
#byte $E4 ;; C715 0003C725 ;;
#byte $03 ;; C716 0003C726 ;;
#byte $60 ;; C717 0003C727 ;;
#byte $80 ;; C718 0003C728 ;;
#byte $E4 ;; C719 0003C729 ;;
#byte $03 ;; C71A 0003C72A ;;
#byte $70 ;; C71B 0003C72B ;;
#byte $10 ;; C71C 0003C72C ;;
#byte $E4 ;; C71D 0003C72D ;;
#byte $03 ;; C71E 0003C72E ;;
#byte $98 ;; C71F 0003C72F ;;
#byte $58 ;; C720 0003C730 ;;
#byte $E4 ;; C721 0003C731 ;;
#byte $03 ;; C722 0003C732 ;;
#byte $C0 ;; C723 0003C733 ;;
#byte $80 ;; C724 0003C734 ;;
#byte $E4 ;; C725 0003C735 ;;
#byte $03 ;; C726 0003C736 ;;
#byte $D0 ;; C727 0003C737 ;;
#byte $18 ;; C728 0003C738 ;;
#byte $E4 ;; C729 0003C739 ;;
#byte $03 ;; C72A 0003C73A ;;
#byte $10 ;; C72B 0003C73B ;;
#byte $A0 ;; C72C 0003C73C ;;
#byte $E4 ;; C72D 0003C73D ;;
#byte $03 ;; C72E 0003C73E ;;
#byte $48 ;; C72F 0003C73F ;;
#byte $28 ;; C730 0003C740 ;;
#byte $E4 ;; C731 0003C741 ;;
#byte $03 ;; C732 0003C742 ;;
#byte $58 ;; C733 0003C743 ;;
#byte $40 ;; C734 0003C744 ;;
#byte $E4 ;; C735 0003C745 ;;
#byte $03 ;; C736 0003C746 ;;
#byte $90 ;; C737 0003C747 ;;
#byte $98 ;; C738 0003C748 ;;
#byte $E4 ;; C739 0003C749 ;;
#byte $03 ;; C73A 0003C74A ;;
#byte $A0 ;; C73B 0003C74B ;;
#byte $78 ;; C73C 0003C74C ;;
#byte $E4 ;; C73D 0003C74D ;;
#byte $03 ;; C73E 0003C74E ;;
#byte $D8 ;; C73F 0003C74F ;;
#byte $30 ;; C740 0003C750 ;;
#byte $E4 ;; C741 0003C751 ;;
#byte $03 ;; C742 0003C752 ;;
#byte $E0 ;; C743 0003C753 ;;
#byte $A0 ;; C744 0003C754 ;;
#byte $E4 ;; C745 0003C755 ;;
#byte $03 ;; C746 0003C756 ;;
#byte $E8 ;; C747 0003C757 ;;
#byte $00 ;; C748 0003C758 ;;
#byte $00 ;; C749 0003C759 ;;
#byte $00 ;; C74A 0003C75A ;;
#byte $00 ;; C74B 0003C75B ;; 

Gaming Discussion / Re: The Implications of Super Mario Maker
« on: September 03, 2015, 12:10:58 pm »
I can guess that Nintendo figures that it's time to cash in. After all, they most certainly hold that right... and in all honesty, they've created one of the most desirable level creators I've ever seen in my life. Still, it's bound by a set of standardized rules and cannot allow for any true modification - textures, programming, music and so on.

It's extremely unlikely that Nintendo will change it's stance with any of that.

Super Mario Maker will likely be seen by the casual gamer as being nothing more than a fun and creative spin on a few bundled classics. Even those who are otherwise aware are often deterred by unwillingness to learn, the amount of time it takes to completion, etc.

I'm not expecting much to change around here or anywhere else, but it's nice to think that a new wave of knowledgeable people will come. Sadly, that's almost never the case when something goes mainstream. The amount of "What's hexdecimal?" posts alone make me cringe at the thought.

Programming / Re: 65xx Assembler Alpha release: Schasm
« on: August 30, 2015, 11:03:48 am »
Apologies for the bump, but is there any chance of a 32-bit version of this app?

Programming / Re: 65xx Assembler Alpha release: Schasm
« on: August 22, 2015, 07:02:11 pm »
Structs:  I thought about structs and sort of dismissed them as "ehh, maybe I'll do that later."  Currently they are not supported.

Absolutely no pressure, but this would be an great feature to have.

Otherwise, keep up the excellent work!

Pages: [1] 2 3 4