logo
 drop

Main

Community

Submissions

Help

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

Pages: 1 ... 35 36 37 38 39 [40] 41 42 43 44 45 ... 129
781
Gaming Discussion / Nintendo announces Mario hack app
« on: June 11, 2014, 12:09:48 am »
Sort of. It looks like it's a new game but with built-in level editing, including SMB or New SMB graphics sets.
http://www.youtube.com/watch?v=NLS458ekSEI

Who knows, maybe in 20 years they'll condone translation hacks for old games?

782
General Discussion / Re: So I was watching the new AVGN...
« on: June 09, 2014, 01:04:26 am »
I think the Japanese version allows you to save (though using an ASCII TurboFile memory card). You have to push A on controller 2 for the menu, though I'm not sure which if any emulators support it, so I'd guess you'd have to use savestates otherwise.
However, the NES version doesn't include saving, or even passwords. I'm guessing they gave you 50 lives as an apology.

783
Programming / Re: [NES] Captain Tsubasa II DTE Hack
« on: June 03, 2014, 12:48:59 pm »
You can double the number of pairs by using two tables (make one table of the first character in every pair, and another table with the second character in each).

So like to read pair 5:
on a single-table DTE, you'd read character 10 (5 x 2) on pass 1 and character 11 (5x2 + 1) on pass 2.
on a two-table DTE, you'd read character 5 in table 1 on pass 1 and character 5 on table 2 on pass 2.

The limit is increased because DTE routines use X to read into the table, so on NES (which has only 8-bit registers) it is only possible to read up to 255 bytes ahead from the start of the table. Since a single-table DTE takes two bytes per pair, that means you can only have half as many pairs.

784
Programming / Re: [NES] Captain Tsubasa II DTE Hack
« on: June 03, 2014, 02:18:20 am »
Good catch on the TXA/TAX mixup.

As to whether or not A should be implied in an ASL opcode without an argument (as shifts can be used on A or memory) or if that should be considered an error, that's probably an interpretation difference. Not sure if it's official or not.

785
No offense but you're quoting Urban Dictionary. :D
(probably everything is offensive in some way according to that site :P )

786
General Discussion / Re: RPG Maker Humble Bundle
« on: May 31, 2014, 11:29:34 am »
I don't see why one should blame the tool if a lot of amateur games come out of it?

And what about that official FF phone game (FF Dimensions?) that looked like RPG Maker? I have a feeling a lot of S-E's current graphics artists couldn't do REAL 16-bit pixel art anymore. :P

787
ROM Hacking Discussion / Re: Screenshots
« on: May 28, 2014, 06:15:39 pm »
I... don't know, actually. I'm not sure if youtube will let me upload a video longer than 15 minutes? Plus there's the music playing in the background and the possibility of a resulting copyright strike.

I know. I had five seconds of music in one video and copyright-bot blocked it.
I'd argue fair use if I thought the video was worth arguing about, but it was just a personal video to show a friend.

788
Personal Projects / Re: KingMike's Translation projects.
« on: May 24, 2014, 11:44:56 pm »
Awhile ago, I found an old floppy disk with some source code to my word-wrap hack for Kaiju Monogatari. I fixed it up a bit into a doc, but as I have no working homepage on the Internet, I have posted it here.

I don't know if it's the final bugtested code or not. For NES, I pretty much write the ASM in a file for planning but insert the raw hex into the ROM. I test and debug in raw hex but may not update my doc. (for SNES, I have used xkas, so I have to fix the ASM source on those.)
I recall at one point I had a version that supported line wrap and the original scrolling method, but I lost in when I replaced my HDD.
I ended up with an uglier version that didn't scroll and would overwrite the old text and then fill out the rest of the window with spaces.

I found a backup ROM on the disk, but apparently that has corrupted in the decade or so since it was written.
Code: [Select]
WordWrapIndex = $E9 Position in the buffer where the text that needs wrapping is
BufferRead = $EA (16-bit) Text window buffer read position for moves
BufferWrite = $EC (16-bit) Text window buffer write position for moves
MoveLength = $EE

TextBufferIndex = $0163 Position to next insert text in buffer

TextBuffer = $04A0 (64 bytes. In the original game it was 16-char x 4 lines
in the translation it is (24 char + 8 overflow) x 3 lines
I think the first line of a string might have been limited by 1 less character
as a "stop" marker at the beginning for when the game scrolls the text window up.)

This routine expects that text in the RAM buffer will be formatted as such:

 AAAAAAAAAAAAAAAA
 AAAAAAAA........
 BBBBBBBBBBBBBBBB
 BBBBBBBB........
 CCCCCCCCCCCCCCCC
 CCCCCCCC........

 Where A, B and C are lines A, B and C on the screen. (24 char by 3 lines)

 If it isn't, then it will detect the start of the word and shift that and everything else down.

Character map:
$FB Toggles Auto-line break
$FC The original game's space code
$FD Do word wrap
$FE New space code
$FF End of text code

lda MoveLength
bne ScrollRoutine
ldx #$00 ;text buffer index 0
CheckFormats:
lda TextBuffer,x
cmp #$FF ;end string flag
beq EndFormatAdjust
cmp #$FD ;line break flag
beq DoWordWrap
cmp #$FB ;auto-break flag toggle
beq UseScrollingText
inx
cpx #$60
bne CheckFormats
stx TextBufferIndex
EndFormatAdjust:
rts

UseScrollingText:
lda #$FE ;replace Scroll Toggle flag with hard-space
sta TextBuffer,x
inx
lda MoveLength
beq SetScrollFlagOn
lda #$00
sta MoveLength
beq CheckFormats ;a=0, so this will branch always to CheckFormats, next iteration of loop
SetScrollFlagOn:
lda #$01
sta MoveLength
bne CheckFormats ;a=1, so this will branch always to the the next iteration of the loop

DoWordWrap:
lda #$FE
sta TextBuffer,x ;replace line break with hard space
lda TextBuffer+0x19 ;check if character 25 of line 1 is hard-space already
cmp #$FE
beq CheckLine1B ;if it is, skip wrapping line 1
ldx #$19
jsr WordWrap
beq WrapLine2
CheckLine1B:
lda TextBuffer+0x1A
cmp #$FE
beq WrapLine2
ldx #$1A
jsr WordWrap
WrapLine2:
lda TextBuffer+0x39
cmp #$FE
beq CheckLine2B
ldx #$39
jsr WordWrap
beq EndWordWrap
CheckLine2B:
lda TextBuffer+0x3A
cmp #$FE
beq EndWordWrap
ldx #$3A
jsr WordWrap
EndWordWrap:
rts

WordWrap:
lda TextBuffer,x
cmp #$FE ;check if we have a hard space
beq CheckForEOL
dex
bne WordWrap ;keep going back until we find the last hard-space
beq EndFormatAdjust ;if we get to the start of the window, stop

CheckForEOL:
txa
pha ;backup index of space
lda #$00
sta MoveLength ;initialize Move Length
FindEOL:
inx
txa
and #$1F
beq MoveText ;if the text spilled over a line, then we need to break it
lda TextBuffer,x
cmp #$FE ;current text byte a space? Check if it's the EOL.
beq IsItEOL
inc MoveLength
bne FindEOL ;since text buffer isn't 256 chars long, we can use this as branch always

IsItEOL:
inx
lda TextBuffer,x
cmp #$FE
beq MoveText ;assuming 2 spaces in a row is probably an EOL. Move all text forward MoveLength bytes
inc MoveLength ;it wasn't, so let's assume a space and continue checking
dex
bne FindEOL

MoveText:
pla ;retrieve index of space character
sta WordWrapIndex
and #$60 ;A = start of line index is on
clc
adc #$C0 ;convert to address in buffer
tay ;Y = index of beginning of line with space
ldx #$00
lda #$FF
sta BufferWrite ;Write to $04FF (last byte of buffer)
sec
sbc MoveLength
sta BufferRead ;Read from $04FF - MoveLength
lda #04
sta BufferWrite+1
sta BufferRead+1 ;setting the high bytes of the pointers
MoveTextLoop:
lda (BufferRead,x)
sta (BufferWrite,x)
dec BufferRead
dec BufferWrite ;transfer string backwards
cpy BufferRead
bcs MoveTextLoop ;repeat until we've copied through the current line

inc BufferRead
lda BufferRead
sta BufferWrite ;we're going to insert text and the current point
lda WordWrapIndex
clc
adc #$A0 ;low byte of address of TextBuffer
sta BufferRead ;set read position to where the text is that needs to be word-wrapped
WriteWrapText:
lda (BufferRead,x)
sta (BufferWrite,x)
lda #$FE
sta (BufferRead,x) ;now let's delete the string
inc BufferRead
inc BufferWrite
dec MoveLength
lda MoveLength
bne WriteWrapText
rts

789
This is just me, but I wouldn't have posted shots of that font as-is. I think it's kind of embarrassing from a technical standpoint. There's a reason why people mock the T E R R A N I G M A font, even if that font isn't final.
Some progress is still progress, though.
We can't always have EVERYTHING looking nice all at once. :P

790
Just curious, what was the difficulty you ran into during the conversion? I did the same for Metroid and didn't have much of a problem at all.

I can only imagine it would be quite different depending on the game.
Converting from CHR-RAM to CHR-ROM means that if the game wants to rewrite even a SINGLE tile in VRAM, another CHR-ROM bank is needed.

791
So someone in another forum posted an old ad for a Japanese retro-game store, with a Mega Drive game misspelled "WWF Law".
Unintentional idea inspiration! :)
I mean, isn't pro-wrestling largely attitude anyways? :P (at least that's the impression I've always gotten when my dad watched the shows)
Why not put them to work fighting criminals in a beat-em-up?

792
Newcomer's Board / Re: How do I find the script to this N64 RPG?
« on: May 22, 2014, 10:21:10 am »
I open the rom with notepad+ and hexecute, and the only thing that stored in ASCII are the item and enemy names. But the letters are not even in order, for example, the enemy "Tomb Rat" is spelled "oTmbR ta" inside the ROM.
Your ROM is probably byte-swapped.

793
General Discussion / Re: VIZ acquires the Sailor Moon franchise.
« on: May 17, 2014, 10:58:09 am »
I might consider watching that if they can charge reasonable prices for it.
I mean, it looks like when ADV released the series last they wanted $160 for a 2-season set? That's about double what most boxsets cost.
Not surprising then that used legit copies of said set seem to have retained their value.

794
Newcomer's Board / Re: Editing the End Credits in Super Mario 2
« on: May 15, 2014, 01:17:43 am »
I'm not sure but I have heard the text is sprites, and as such is stored as sprite data.
Try searching every 4 bytes (since each sprite definition is 4 bytes) C***L***A (or some games might omit the property byte, since it is the same, so if that doesn't work try wildcards with letters 3 bytes apart).

795
Newcomer's Board / Re: Money and Romhacks
« on: May 15, 2014, 01:11:13 am »
I think D- and some other romhackers set up a company that released translations for a cancelled SNES game and three Japan-only Megadrive games (Super Fighter Team company or something). They even went so far to buy a prototype of the cancelled official English version for Blue Almanac specifically to prevent its release since they were working on their own separate translation in the mean time.
I don't think D was involved in the creation of Super Fighter, though he has worked with them.
And the thing is that Super Fighter licenses their translations from the copyright owners.
As to the Star Odyssey prototype, D said the original canceled was a pretty crappy translation and had some major bugs anyways.

796
ROM Hacking Discussion / Re: Patching problem Esper Dream
« on: May 10, 2014, 09:23:45 pm »
The only two BIOS revisions I know of are the standard FDS BIOS and the Twin Famicom BIOS. They should be identical except for the logo.

The only other difference between FDS "ROMs" that I know is that some may have a header (131,016 bytes for most games) and others don't (131,000 bytes). You might need a hex editor that lets you add/remove data if needed to try that.
(the header is just "FDS",0x1A,number of sides (2 for 128KB games, which is most of them) and the rest of the bytes are 0.)

According to No-intro, there are two versions of the game, 1.0 and 1.1. According to the readme, the patch is for version 1.1.

797
Gaming Discussion / Re: Remake of Pokemon Ruby and Sapphire in 3DS!
« on: May 10, 2014, 11:31:29 am »
They've done it twice before.

Probably a safe guess the 4DS will have a remake of Diamond/Pearl/Platinum as well.

798
ROM Hacking Discussion / Re: Changing rom size of snes rom
« on: May 09, 2014, 11:43:29 am »
First Google result for "snes cart header"
ROM $7FD7 (if LoROM) or $FFD7 (if HiROM, both values unheadered), value 0C = 4MB.

If the patch doesn't pad the game to a full 4MB, then you should do that (either use a hex editor and 0, FF or whatever to the end of the ROM up to 0x3FFFFF, or just download WindHex. There's an option in there somewhere to pad the ROM.

799
Gaming Discussion / Re: Remake of Pokemon Ruby and Sapphire in 3DS!
« on: May 08, 2014, 09:23:14 am »
Okay?

I think we need tell Nintendo TRUMPETS OR RIOT.

800
I remember reading about that back in the day in Nintendo Power. It sounded cooler than the actual game.

Then again there were the Austin Powers GBC "games" that had nothing but those extras, leaving me confused. So someone made an AP parody of Windows 95 for GBC and then decided it was worth selling as a retail product? With two versions?

Pages: 1 ... 35 36 37 38 39 [40] 41 42 43 44 45 ... 129