+  RHDN Forum Archive
|-+  Romhacking
| |-+  General Romhacking
| | |-+  Screenshots
Pages: 1 ... 56 57 [58] 59 60 ... 106
Author Topic: Screenshots  (Read 67874 times)
kuja killer
Guest
« Reply #855 on: November 06, 2008, 05:48:45 pm »

The black bar on the left side of the screen is a NES limitation, not game. It's there for the majority of NES games because the left 8 pixels of the screen is all garbage tiles usually, so that's why they're blocked out. It's extremely hard for a game to be able to draw the screen properly to not make it mess up on the left side. Very few games can even do it. MM1 and 2's screen drawing routines are very much different than mm3-6, i dont know how they work, but I just know they're totally nothing like the other games. And besides sprites usually won't be able to show on the left 8 pixels either or something
Kitsune Sniper
Guest
« Reply #856 on: November 06, 2008, 06:09:22 pm »



In case you're wondering what's going on, well, there. I'm currently hacking a savestate to get the proper order of the tiles before I can reinsert them into the FDS image. Why? Because the fucking game uses some sort of run-length encoding to store the tile order data:

If the byte is 00, then draw a black / transparent tile.
If the byte is bigger than 01 but smaller than 40, then take the next byte and repeat it that amount of times
If the byte is equal or larger than 40, then draw the tile normally.

It's simple enough, but having to calculate and move data around by hand is NOT FUN. Blargh.
GenoBlast
Guest
« Reply #857 on: November 06, 2008, 10:27:57 pm »

Quote from: Kitsune Sniper on November 06, 2008, 06:09:22 pm
If the byte is 00, then draw a black / transparent tile.
If the byte is bigger than 01 but smaller than 40, then take the next byte and repeat it that amount of times
If the byte is equal or larger than 40, then draw the tile normally.
Sounds like a headache. Shocked

Does the original titlescreen really repeat enough tiles to make that worth it? Sounds like the Devs were wasting their time, to me.
Kitsune Sniper
Guest
« Reply #858 on: November 06, 2008, 11:31:39 pm »

Quote from: Killa B on November 06, 2008, 10:27:57 pm
Quote from: Kitsune Sniper on November 06, 2008, 06:09:22 pm
If the byte is 00, then draw a black / transparent tile.
If the byte is bigger than 01 but smaller than 40, then take the next byte and repeat it that amount of times
If the byte is equal or larger than 40, then draw the tile normally.
Sounds like a headache. Shocked

Does the original titlescreen really repeat enough tiles to make that worth it? Sounds like the Devs were wasting their time, to me.

The title screen is a single layer the size of the screen, on top of the background. There are parts where there are around 40 blank tiles, repeated over and over - and this can be represented with two bytes. Yes, it's a memory saver - but then again, Konami smoked tons of crack, as usual.

They had an entire 128kb disk at their disposal and they didn't even use half of it, instead compressing the hell outta the data. Tongue
Vanya
Guest
« Reply #859 on: November 06, 2008, 11:58:11 pm »

Here's the 5th (and maybe final) Draft:


(the mugs are temp of course)

I'd also like to announce that I will be attempting to place a new ASM hack into the stage select screen that will display the name of the robot master at the bottom of the screen when you place the cursor on his panel. It will probably be a huge hassle, but meh, i'll enjoy doing it. ^_^
KingMike
Guest
« Reply #860 on: November 07, 2008, 12:23:18 am »

Quote from: Kitsune Sniper on November 06, 2008, 11:31:39 pm
They had an entire 128kb disk at their disposal and they didn't even use half of it, instead compressing the hell outta the data. Tongue

RAM was a bigger limitation than disk space on the FDS. Many of the FDS games I've looked at had a sizable amount of empty space on disk. They had 34KB (32KB in the RAM cart, plus the FC's 2KB internal RAM) to hold stuff before they'd have to load off the disk (and thus having loading time).
(though the BIOS ROM included some basic functions like enabling/disabling the screen, controller reading, etc. developers could use to save space)
creaothceann
Guest
« Reply #861 on: November 07, 2008, 03:24:54 am »

Quote from: Kitsune Sniper on November 06, 2008, 06:09:22 pm
If the byte is 00, then draw a black / transparent tile.
If the byte is bigger than 01 but smaller than 40, then take the next byte and repeat it that amount of times
If the byte is equal or larger than 40, then draw the tile normally.

What if it's exactly 01?
Kitsune Sniper
Guest
« Reply #862 on: November 07, 2008, 02:10:21 pm »

Quote from: creaothceann on November 07, 2008, 03:24:54 am
Quote from: Kitsune Sniper on November 06, 2008, 06:09:22 pm
If the byte is 00, then draw a black / transparent tile.
If the byte is bigger than 01 but smaller than 40, then take the next byte and repeat it that amount of times
If the byte is equal or larger than 40, then draw the tile normally.

What if it's exactly 01?
...

It divides by zero and opens a black hole in my monitor. I DON'T KNOW! Tongue
BRPXQZME
Guest
« Reply #863 on: November 07, 2008, 04:40:46 pm »

Quote from: Kitsune Sniper on November 07, 2008, 02:10:21 pm
It divides by zero and opens a black hole in my monitor. I DON'T KNOW! Tongue
Oogh... that wouldn’t be cool. Perhaps it’d be a good opportunity to test out the latest in furball restoration technology, though.
KingMike
Guest
« Reply #864 on: November 07, 2008, 04:44:16 pm »

You talking about Nicole?
Could've sworn the tilemap used the same compression as the tiles themselves.
(FF = end, 0-7F = repeat following byte that many times, 81-FE = write next (value-$80) bytes, 80 = write next 256 bytes (probably, the games doesn't appear to check if (value AND #$7F) = 0 until after the first iteration of the loop (when the counter should underflow) )
Kitsune Sniper
Guest
« Reply #865 on: November 07, 2008, 06:00:14 pm »

Quote from: KingMike on November 07, 2008, 04:44:16 pm
You talking about Nicole?
Could've sworn the tilemap used the same compression as the tiles themselves.
(FF = end, 0-7F = repeat following byte that many times, 81-FE = write next (value-$80) bytes, 80 = write next 256 bytes (probably, the games doesn't appear to check if (value AND #$7F) = 0 until after the first iteration of the loop (when the counter should underflow) )
Eh, I dunno. It doesn't seem to use anything after 40 - but I haven't messed with it enough yet. I'd rather not take the risk. :p
Wareya
Guest
« Reply #866 on: November 09, 2008, 04:46:42 pm »


I'm getting closer to making the area the way I want it to be for my mini-hack. Closer, closer and closer. Yeah, I already have the graveyard area done, this is a pretty minor hack. If you've played OoT, you'll automatically know what's different.
Kitsune Sniper
Guest
« Reply #867 on: November 11, 2008, 12:33:55 am »

I had to redo everything, but here it is.



There's a stray pixel in that screenshot, it's fixed in the current CHR data in the FDS image. Now comes the hard part... converting that to compressed data and reinserting it by hand. :\\
Naruto
Guest
« Reply #868 on: November 11, 2008, 09:37:09 am »

Quote from: Vanya on November 06, 2008, 11:58:11 pm
Here's the 5th (and maybe final) Draft:


(the mugs are temp of course)

I'd also like to announce that I will be attempting to place a new ASM hack into the stage select screen that will display the name of the robot master at the bottom of the screen when you place the cursor on his panel. It will probably be a huge hassle, but meh, i'll enjoy doing it. ^_^

I dont like it.

I like this one the best:

And you can put metal things from the background into this picture below. Smiley

Quote from: Vanya on November 03, 2008, 04:34:48 pm
First draft of new stage select screen:
DarthNemesis
Guest
« Reply #869 on: November 11, 2008, 11:30:11 am »

Quote from: Naruto on November 11, 2008, 09:37:09 am
I dont like it.

I like this one the best:

And you can put metal things from the background into this picture below. Smiley

Quote from: Vanya on November 06, 2008, 11:58:11 pm
(the mugs are temp of course)
Pages: 1 ... 56 57 [58] 59 60 ... 106  


Powered by SMF 1.1.4 | SMF © 2006-2007, Simple Machines LLC