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 - Hamtaro126

Pages: [1] 2 3
ROM Hacking Discussion / Re: (ASM) Text Routine for SNES hack needed
« on: June 15, 2012, 10:28:46 pm »
Wow. Nothing Happened,

I will say it for short: A Text engine which is like the equivelent of Ufouria/Hebereke text system, but for SNES in the form of a SMW patch (XKas 6) or at least a SNES Demonstration of sorts (Layer 3 only)

Font is 8x16, ASCII format with these codes:

Ending Routines (Text Opcodes):

$00 = End Text
$01 = New Line
$02 = Main Dialog, Box+Cursor Enabled (Text Pointer @ NES PPU $24C5 in original)
$03 = Story Dialog, Box+Cursor Disabled, (Text Pointer @ NES PPU $2285 in original)

$04-$07 = Reserved, Unused

Start Routines (Face Opcodes):

$10-$17 = Selection of Faces to Display (BG3, No Sprites)
$18-$19 = Lower halves of the faces, displayed in the values above


$20-$7D = 8x16 ASCII Font

8x8 Cursor:

$7E = a Blank for use along with the Cursor
$7F = Cursor (the Down arrow)

If anyone would to help, Please! I'd be grateful,

A Mapper hack, using proper bankswitching, for HEBEREKE (16k PRG based mapper compatibility)

I Tried, But when doing so, CORRUPTION, even when emulating proper 16k in FME7

I could not backtrace it either. Stops at the ''Start Game'' after Title, possibly around $014010 ($8000-$9FFF in my non-working hack)

ROM Hacking Discussion / (ASM) Text Routine for SNES hack needed
« on: June 07, 2012, 07:13:23 am »
Is there / can someone an example on how to really do a Byte-to-Byte Incremental Text system for SNES, like Hebereke for NES.

If anyone asks, It's for a possible SMW hack

- uses NameTable #0 With Status Bar usually enabled
- ASCII 8x16 font @ Layer3 CHR $120-$17F (basically 128 bytes of CHR used at least)
- 16x16 Faces of Layer3 Characters in $000-004/$010-$014 with Flipping and Attributes (No Sprites) using Codes
- up to 1-4 rows of text possible
- Seperate Addresses for Text Position
- Routine to Use and Erase Dialouge Box
- Modes for Faces ($004-$007),  Dialog/Overwrite (003), NextLine ($002), StoryText ($001) and Erase/EndDialog ($000)

I wanted to know because I started analyzing and reverse engineering the code for the portable Legend Of Zelda games (especially the Oracles), and I think it's important to know what language was used to develop them (C/C++ compilers usually do a lot of optimization, etc, and the resulting Assembly code sometimes gets obfuscated by the techniques used which makes it harder to understand).

I also know that Zelda GB Sound is using the same engine as For The Frog The Bell Tolls, as well as Balloon Kid, Dr. Mario, Super Mario Land 1 and 2, etc.

The Music Engine is also used in NES as that variant adjusted the notes a bit as well as having DPCM. (Hello Kitty World is a Famicom port of Balloon Kid, Same with NES Dr. Mario)

Before returning, (because parodius is dying) I am going to PM tepples and NE7!, then when authorized. download and upload a couple of utilities:

Kami's FC2SFC example converter
(NE7! from NESDEV saved this for me to archive, No Source)


Tepple's FDED map editor and example COUT uploader
(Based off of Apple 2's Monitor routines, uses Allegro, source code included)

But first, I am going to apologize to everyone about me lashing at this community, I was very stupid. From now on, I must be VERY careful on youtube.

*blames Anime fan-dubbing communities for me getting the warn*

EDIT: Got NE7! to authorize the FC2SFC utility by Kami, Waiting on Tepples for his authorization on his example utility!

EDIT2: NESDEV is gonna be moved, so only Parodius hosting is dying

ROM Hacking Discussion / Re: BankSwitching Values - Number Conversions
« on: December 25, 2011, 11:10:28 pm »
Both of them are unusual.
It looks like FME-7 requires two writes, one to $8000 to specify which CPU address to swap, and then the bank value needs to be written to $A000.
VRC6 looks irregular in that it can swap a 16KB bank at $8000 and an 8KB bank at $C000. I haven't looked at any of the games so I don't know if that means writes to $8000 should be counted in 16KB increments and $C000 should in 8 or what.
If I were, I'd just trace the original code then watch as it bankswaps, then look for the hex codes of the code executed after the swap in a hex editor.

I know about the switching stuff in Hebereke already, Just that banks in Hebereke mostly require some increment/decrement stack routines, and if modified, they will not work at all or be glitched...

Increment Bank via Stack: 0x01FC53
Decrement Bank via Stack: 0x01FC6B

ROM Hacking Discussion / Re: BankSwitching Values - Number Conversions
« on: December 25, 2011, 02:55:26 pm »
No, typically banks are numbered sequentially (0,1,2,3,4,etc.) regardless of bank size.

There are a couple odd ones (mostly pirate multi-cart mappers), but normally they are in order.
And there's some that have a flaw known as "bus conflicts". That means the value written to the mapper must be the same as the value store at the ROM address being written to to activate the bank swap, or else the value written to the mapper will be a corrupted value.
Typically, those games will store a table with all the bank numbers in a row like
00, 01, 02, 03, etc.
at some ROM address (say $C000) and then do something like
lda $BankValue
sta $C000,x

Ok, Because I was hacking Hebereke earlier, and it did not seem to accept it if I did a lot of proper hacks to get the 16k switching, due to stack!

And the unmodified Hebereke and SMB2 roms uses 2 8k Banks to use a emulated 16k bank.

EDIT: I'm using VRC6 for this.

ROM Hacking Discussion / Re: BankSwitching Values - Number Conversions
« on: December 25, 2011, 11:38:13 am »
The thing is some people do not really know how to do 32k because it's not that known, But I think it is actually equal to 4 8k banks?

I could still use 16k or 8k, though. but 32k is another banking mystery!

ROM Hacking Discussion / BankSwitching Values - Number Conversions
« on: December 25, 2011, 01:27:41 am »
I am still working on a couple of ROM Hacks, And there is a question about banking:

Is is formatted like this?:

08k - 0,2,4,6,8,A,C,E
16k - 0,1,2,3,4,5,6,7
32k - 0,4,8,C,10,14,18,1C

Is it correct?

The bank sizes has to be documented because Disch's Mapper docs does not explain the bank sizes and limits!

ROM Hacking Discussion / Re: translate Snes games
« on: November 11, 2011, 03:26:04 pm »
You need an axe, a hammer, and several nails.

Do not forget to cut down trees to get wood!

Newcomer's Board / Re: Introduction Topic
« on: September 28, 2011, 05:32:44 pm »
Hello hacking people.

My name is Justice Colde/King D. Supersepiroth, I am a crafter (I just make things) and Y'all may have seen My YouTube Poops on YouTube (obviously)

I have been working on 3 hacks and I'm looking into getting better at making hacks before I jump barrel and fall flat on My face.

Welcome to RHDN!

Documents, Fonts, Utilities, It's yours my friend, As long as you have enough hacking experience!

Personal Projects / Re: Zelda 1 Music Test
« on: September 28, 2011, 05:19:09 am »
You could replace the sound engine, but it looks like you've done such a great job documenting this one. That is one thorough document of a sound engine, good work on that. Cool that you did that from sheet. Download Noteworthy Composer for this purpose, if you haven't already.

BTW: Noteworthy is not free, I got many other tools such as FL Studio and the 3ML(MML tool)!

Personal Projects / Re: Zelda 1 Music Test
« on: September 21, 2011, 07:42:28 pm »
Normally, when you replace a music engine, you need to care about RAM usage of the old engine vs RAM usage of the new engine.  But this is Zelda 1, and it has plenty of available RAM to use for any purpose.

But I wouldn't use Famitracker's sound engine, since it doesn't support sound effects.  (Unless something happened that I'm not aware of)

What about Shiru's FamiTone? I heard it uses Sound Effects!

Sounds have to be in a seperated, multitrack FTM, though.

Really should consider editing your screencaps to remove your desktop (reducing the images to just the windows themselves). :)

Got it, will do that in the future screenshots!

It's a generally accepted rule that if you're making a thread in Personal Projects, you should show off some screenshots, complete or not.


Here are the early Screens with differences (In my newly revamped Webs account), the cursor on Title/Game Over needs work!

James ''Pepsiman'' Thomas and I are making a translation of HEBEREKE, But he is not responding at least until later, so its on hold currently!

And other news: Yes! I finally coded a PRG mapper emu from FME7/SunSoft 5-b/MMC3 to MMC5, And used it in Hebereke!

+Bank Emulation with actual JSR, CMP, Branching, ect.
+Extended CHR Banks used, Slots filled if needed. (the Status Bar made from sprites is now completely revamped and better)
+O-Chan uses no IRQs now on Title, now uses actual sprite extention,
+I also (partially) modified the IRQS and revamped CHR, IRQs are 8-bit, and Converted to almost-exact locations,

Not Done

-Need to have certain Scrolling in the Story from the Title
-Some CHR functions, like Game Over when transition through Title, makes CHR not restore, because it's not implented yet
-Different Passwords? Prevents further Tests compared to Ufouria (Need JP ver. Final Boss-Unyo code)!
-I had yet to test it in full, but it currently works like a charm,
-Change Title to prevent copyright issues (easy):
''(C)1991 SUNSOFT''
''MMC5 HACK BY H126''

Since It is not a release thread (yet?) No Screens until the patch is done.

Thank you for helping me hack, as well as in other forums.

BASIC can be simple, But 6502/Partial X86 Hacking/ASM is understandable to me,

EZZT is a dead project since most projects using it is pretty much uneditable, and no source code for that either, I can try to make a disassembly using the Open-Source TatraDAS Interactive Disassembler, Since it is what I am originally after,

And since I use Dosbox, a lack of a DEBUGGER with good features and a screen viewer does not help... I may ask the author for a debugger, but focusing on the main task is my concern...

The problem is remaking and reassembling the Extended DOS Header in the binary at 0x00000000-0x00001c00 for ZZT and SuperZZT, is it in Relocatible Format?

Current header format explanation from my notes:

0x0000-0x001f = DOS Header
0x0020-0x1c00 = ZZT/SZZT/TurboPascal7 Header Extention? (Unknown addresses loaded in exeecutable RAM)

EDIT: Even though ZZT can be hackable, and many people do hack it, That ZZT and SuperZZT is a Hackable Freeware, Tim Sweeny and Epic allows it because of no source code. And therefore, using utilities like UNLZEXE and TSRs are allowed.

So that means that it is not a bad thing to post help here for ZZT and SuperZZT, Hopefully...


I'm using the pseudo-code for hacking ZZT to graphics mode as a TSR...

Code: [Select]
; Arguments: cx = character-cell X, cy = character-cell Y
; c = character code, f = foreground color, b = background color

videooffset = ((cy * 80) * 14) + cx; base address of the character cell on each plane
videobase = $A000; the start of EGA memory
characterseg = (? >> 4); where ? = the base address of your character set
characterbase = (? & $0F) + (c * 14); as above

for i = 0 to 13
DEF SEG characterseg; or however this is represented in x86 assembly
load A, (characterbase + i); the register names are all dummies here, use whatever works
DEF SEG videobase; set to write to video RAM
for j = 0 to 3
out $3C4, 2; a bit of voodoo programming to select the plane to access, since low-level EGA documentation
out $3C5, (1 << i); seems very hard to find
if (f & (1 << j) != 0) and (b & (1 << j) != 0) then store $FF, (videooffset + lineoffset)
else if (f & (1 << j) != 0) then store A, (videooffset + lineoffset)
else if (b & (1 << j) != 0) then store (A XOR $FF), (videooffset + lineoffset)
else store $00, (videooffset)
videooffset += 80

First, What (free) BASIC for DOS can combine Basic and ASM in one source? Need to have a way to convert both.

Second, can use DIM on the equals signs, but I must know how to convert it,

Third, This utility can be modded for better color palette options and SZZT support...

This is concerning my thoughts on how I will upload the official NES2GB(Color) Document in PDF Format,

It is by R&D2, It was version 0.5 BETA and was leaked in 200x for a website with NES and GB dev info, and according to you guys, since you have these types of official documents, have SNES and Gameboy Docs from Nintendo.

Should I upload it?

this, along with some others here on RHDN, may have been part of the Document leak in the late 1990s-early 2000s.

ROM Hacking Discussion / Re: music for serious hacks
« on: August 08, 2011, 05:31:32 am »
Hey hackers, I am a musician and composer... if anyone's making huge hacks that they want different music hit me up and tell me what you would be changing the music for and what feel you'd want it to be and I would be happy to write and create something for you.  My email address is

My 8 bit music can be found here and I am also the lead guitarist of this progressive metal band so you all can hear my stuff before hand.

If you are up to it, I am looking for:

-Hebereke/Ufouria Music in SMB1, SMB2 and SMB3

-Doki Doki Panic music and sounds in SMB2, DPCM Sound Effects from SMB2

Pages: [1] 2 3