Register | Login | |||||
Main
| Memberlist
| Active users
| ACS
| Commons
| Calendar
| Online users Ranks | FAQ | Color Chart | Photo album | IRC Chat |
| |
Acmlm's Board - I2 Archive - - Posts by FuSoYa |
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 |
User | Post | ||
FuSoYa Defender of Relm Level: 26 Posts: 122/255 EXP: 99529 For next: 2746 Since: 03-15-04 From: Moon Since last post: 7 days Last activity: 7 hours |
| ||
Originally posted by Jundaunted Yes, of course. You typically do an ASM trace, locate the decompression routine, figure out the format, and write a decompressor for it. If you don't know how to do that, then you pray that someone else already has or is willing to do it for you. Just don't ask me, I've been very busy with other things these past few weeks. There's always corruption as well, but it's tedious and may not help if the format isn't very straightforward. |
|||
FuSoYa Defender of Relm Level: 26 Posts: 123/255 EXP: 99529 For next: 2746 Since: 03-15-04 From: Moon Since last post: 7 days Last activity: 7 hours |
| ||
...the other thread was closed for a reason. Don't create a new one on exactly the same thing. *closes thread* |
|||
FuSoYa Defender of Relm Level: 26 Posts: 124/255 EXP: 99529 For next: 2746 Since: 03-15-04 From: Moon Since last post: 7 days Last activity: 7 hours |
| ||
Originally posted by Jundaunted Let's see... you'll need an ASM tracer (Lord Tech's build of Snes9x, or Evil Peer's if you're stuck on XP), possibly an address converter (Lunar Address, from my own site), coding knowledge for creating the decompressor (C/C++ is good), and knowledge of the 65816 instruction set and SNES hardware so you can understand the trace and find what you're looking for (several documents are out there). Most of those can probably be found at Zophar's, or by using Google. You'll also need lots of time and patience, if this is your first time hacking ASM code or compression. Good luck... |
|||
FuSoYa Defender of Relm Level: 26 Posts: 125/255 EXP: 99529 For next: 2746 Since: 03-15-04 From: Moon Since last post: 7 days Last activity: 7 hours |
| ||
You can also find the numbers in the tooltips that appear for the sprites. Or you can hit "5" in the editor to display the sprite numbers over each sprite in the level. Also, for anyone that changes the sprite palette numbers in the ROM: you can force LM to use an external sprite Map16 data file, which can be updated to make the sprites appear correctly in LM (Hit Ctrl-Shift-PageDown in the Map16 editor, scroll to the last 2 pages, edit as required, then hit Ctrl-F9 to save to an external file). |
|||
FuSoYa Defender of Relm Level: 26 Posts: 126/255 EXP: 99529 For next: 2746 Since: 03-15-04 From: Moon Since last post: 7 days Last activity: 7 hours |
| ||
Originally posted by Keikonium Extract and insert the shared palettes. |
|||
FuSoYa Defender of Relm Level: 26 Posts: 127/255 EXP: 99529 For next: 2746 Since: 03-15-04 From: Moon Since last post: 7 days Last activity: 7 hours |
| ||
Originally posted by Escherial 0, 1, 2, 3, bit-shifted from the upper or lower half of the upper nibble depending on whether it's for the normal or secret exit. |
|||
FuSoYa Defender of Relm Level: 26 Posts: 128/255 EXP: 99529 For next: 2746 Since: 03-15-04 From: Moon Since last post: 7 days Last activity: 7 hours |
| ||
... *trashes* |
|||
FuSoYa Defender of Relm Level: 26 Posts: 129/255 EXP: 99529 For next: 2746 Since: 03-15-04 From: Moon Since last post: 7 days Last activity: 7 hours |
| ||
Er, sorry to pester you more, but what's in the lower nibble of that byte? A few levels seem to have it set to the same value as the upper nibble, but it doesn't appear to do anything. I suspect it's not really used. If you open the OV editor and switch to layer 1 editing mode, then move the mouse over a level, the "D:" value in the status bar is the byte that holds the directions to enable. Also, did you mean that the normal exit direction is in the upper half of the upper nibble and the secret is in the lower half Yes. Er, and is the SNES little or big-endian? Little endian. |
|||
FuSoYa Defender of Relm Level: 26 Posts: 130/255 EXP: 99529 For next: 2746 Since: 03-15-04 From: Moon Since last post: 7 days Last activity: 7 hours |
| ||
The answer seems pretty obvious... there are way too many tiles in the image you're trying to use. 2BE-100=1BE tiles. There's only 200 8x8 tiles available for FG/BG stuff. If you started at tile 0 instead of 100 and didn't overwrite the existing (4C?) animated tiles, there's almost enough space... assuming you don't mind having a level that consists of nothing more than a background and a few animated blocks. |
|||
FuSoYa Defender of Relm Level: 26 Posts: 131/255 EXP: 99529 For next: 2746 Since: 03-15-04 From: Moon Since last post: 7 days Last activity: 7 hours |
| ||
Originally posted by Skitzo Each section of data is in same format used in the ROM. Except the background tile map isn't compressed. If that doesn't answer your question, you might want to be a little more specific... |
|||
FuSoYa Defender of Relm Level: 26 Posts: 132/255 EXP: 99529 For next: 2746 Since: 03-15-04 From: Moon Since last post: 7 days Last activity: 7 hours |
| ||
Originally posted by Mario Maniac Well, then you need to either find a way to reduce the number of tiles, or use another image. If the image is from a tile-based game, zoom in on one of the corners and carefully examine the border to verify that the tiles don't appear to be "cut off" vertically or horizontally (or use an 8x8 grid overlay on the image). If it looks like it's shifted a few pixels over, then shift the whole image back the way it should be. A tile-based image that's off by a pixel or two can seriously degrade pic2snes' ability to minimize the number of tiles required to build the image. |
|||
FuSoYa Defender of Relm Level: 26 Posts: 133/255 EXP: 99529 For next: 2746 Since: 03-15-04 From: Moon Since last post: 7 days Last activity: 7 hours |
| ||
Originally posted by Skitzo Er, sort of... for the background tile map, it's just a fixed array of tile numbers. There's no need to store coordinate information, as it'd be redundant. As for the level layout, it's stored in the MWL file using the exact same format as in the ROM: as a list of object commands. While each object has coordinates and (sometimes) a size value, it's the game's responsibility (and LM's) to translate that into a tile map that can be used to view the level. It might help a bit to know what you're planning/hoping to do. While I can certainly type up the info on the basic MWL structure if you need it (what goes where), I don't really have the time to individually break down how each level object is rendered. That would take hours... |
|||
FuSoYa Defender of Relm Level: 26 Posts: 134/255 EXP: 99529 For next: 2746 Since: 03-15-04 From: Moon Since last post: 7 days Last activity: 7 hours |
| ||
Originally posted by Atma X Just as a quick note though, the max sprites allowed on the "screen" at once is basically referring to the player's screen, not the screen boundaries for objects and exits that you get with F1/F2/F3. You can use those outlines as a general guide for sprite spacing if you like, since it gives you a basic idea of screen width... but if your max sprite limit is 4, you can't put 4 sprites on the far right of one of those screen boundaries and 4 on the far left of the next and expect the player to see 8 sprites at once in the actual game. |
|||
FuSoYa Defender of Relm Level: 26 Posts: 135/255 EXP: 99529 For next: 2746 Since: 03-15-04 From: Moon Since last post: 7 days Last activity: 7 hours |
| ||
Originally posted by Skitzo Ahh, I see... in that case, it might be better if I just sent you a build of LM that can dump the currently loaded level's tile map to a file. It'd only take a couple lines of code anyway, and you'll avoid wasting weeks trying to code a program from scratch to build accurate level maps from object data. |
|||
FuSoYa Defender of Relm Level: 26 Posts: 136/255 EXP: 99529 For next: 2746 Since: 03-15-04 From: Moon Since last post: 7 days Last activity: 7 hours |
| ||
Assign the level an event number. |
|||
FuSoYa Defender of Relm Level: 26 Posts: 137/255 EXP: 99529 For next: 2746 Since: 03-15-04 From: Moon Since last post: 7 days Last activity: 7 hours |
| ||
Yes, that's right. Although if you want level 2 to be invisible until level 1's event is passed, in LM you need to use a translucent level tile for level 2 instead of a normal one that's already visible (if you haven't already). |
|||
FuSoYa Defender of Relm Level: 26 Posts: 138/255 EXP: 99529 For next: 2746 Since: 03-15-04 From: Moon Since last post: 7 days Last activity: 7 hours |
| ||
Originally posted by Skitzo Yes, either send me an email or PM me with the email address you want it sent to. Atma: I'd rather not, since I'm not too keen on public releases of alternate unofficial builds. And making it official by incrementing the version number to 1.63 for something so minor seems rather silly, considering the tilemap wouldn't be of much use for ROM hacking. If there's another public release of LM in the future (which seems unlikely at the moment) I may just leave it in. But it's also possible to extract the same thing from a Zsnes save state anyway. Why, did you want a copy to do something too? |
|||
FuSoYa Defender of Relm Level: 26 Posts: 139/255 EXP: 99529 For next: 2746 Since: 03-15-04 From: Moon Since last post: 7 days Last activity: 7 hours |
| ||
Originally posted by BMF54123 Or more accurately, Nintendo's code apparently doesn't use more than one list entry for which sprite GFX to load for the overworld. It's not like I inserted extra ASM code for setting different FG GFX per submap... I just added a setting to LM for a list that was already there. |
|||
FuSoYa Defender of Relm Level: 26 Posts: 140/255 EXP: 99529 For next: 2746 Since: 03-15-04 From: Moon Since last post: 7 days Last activity: 7 hours |
| ||
Originally posted by Adamantine Edited it out. Gnkkwinrrul should still change the password though, unless he doesn't care about the account... |
|||
FuSoYa Defender of Relm Level: 26 Posts: 141/255 EXP: 99529 For next: 2746 Since: 03-15-04 From: Moon Since last post: 7 days Last activity: 7 hours |
| ||
Yea, it's not ROM, and is definately not RAM. Well, of course it isn't. Topics such as virtual RAM and flash ROM drives aside, a hard drive is traditionally not considered memory, just disk storage. Mabey the person who came up with that, was refering to the actuall Game Cart, and forgot to distinguish a difference between the two (the Game on a Hard Drive, and the Game on the Cart,... the Game Cart can only be written to once, right?,... that's what I remember seeing somewhere) He didn't forget anything. They're more accurately referred to as SNES ROM image files because it's an exact image of what was on the original ROM cart. But it's easier to just shorten the name to ROMs. Just as it's easier to refer to SRAM files by name, as that's what they're used for in an emulator. No one is under the impression that you're literally making parts of your hard drive unwritable, or throwing memory chips in it. ^^ Just as when you take a picture with your camera and put it on your hard drive, you still call it a picture because of what the data represents or is used for. Yea, I worded that wrong. I was meaning to say that Data and Instructions is loaded from ROM, and is Processed in RAM. Technically, it's still wrong. Data and instructions are processed in the CPU. That's why it's called the Central Processing Unit, after all. RAM and ROM don't do processing of any sort. They only hold data. RAM is where EVERYTHING is Run The address that your CPU is grabbing the next instruction from is considered to be where you are "running" or executing at. The SNES CPU's PC register can be set to a RAM or ROM address, meaning you can run/execute instructions directly from RAM or ROM. Depending on the instruction, the CPU may modify or store something in RAM. Or the instruction could be for modifying an internal CPU register, in which case the SNES RAM isn't touched. While technically the SNES emulator on your PC is running and accessing everything in RAM, for the purposes of emulation it must not allow operations that wouldn't be permitted on a real SNES system. Thus, as far as your SNES game is concerned, the ROM is still ROM and the RAM is still RAM. And as Parasyte said, the SNES doesn't usually run anything from RAM. And about running being an improper term, look how it's used below (in the Smaller, Green Text): (they use the word up as the word meaning to load something Hardly. They're using "up and running" to mean getting something started. |
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 |
Acmlm's Board - I2 Archive - - Posts by FuSoYa |