don't click here

Basic Questions & Answers thread

Discussion in 'Engineering & Reverse Engineering' started by Tweaker, May 29, 2008.

  1. Dr. Kylstein

    Dr. Kylstein

    Member
    86
    0
    6
    Thank you. Now I need the DPLCs. I think I have found them in the disassembly, but I don't know what actually goes into one. Or you could just give me the ROM address range.

    Edit: Actually, I haven't found them. It does use them though, right?
     
  2. Peruant

    Peruant

    Just dropping in through gaps Member
    Oh man I feel like an idiot . Talkin bout xm3smps. This question refers to this one

    What are these xm files I keep seeing? I thought I just needed the bins alone to edit the music

    Next is ESE II Sound Importer

    Assuming I'm using Sonic 1 as the hack , I try to port one of the songs over from S3K but I'm left with a red screen when I load up in game. Did I forget to do something or does it have to do with the checksum or something in that area?
     
  3. nineko

    nineko

    I am the Holy Cat Tech Member
    6,364
    522
    93
    italy
    XM is a music file format like MIDI, just much more awesome.
    You find a song you like in XM format and you can convert it to a BIN usable by Sonic 1.
     
  4. Peruant

    Peruant

    Just dropping in through gaps Member
    Makes much more sense to me. Any recommendations for find XMs ? I've tried google.

    Now what I'm doing at the moment is trying to find a song. I'm gonna check with Shinobi 3 since no one has touched that spot
     
  5. HighFrictionZone

    HighFrictionZone

    Hi. Member
    855
    1
    16
    Katy, Texas
    Nothing
    As far as I am aware, red screen = checksum error. If you're using a split disassembly, this shouldn't be a problem as I'm pretty sure the checksum is auto-calculated, or at least there is an easy way to disable the checksum routine. If you aren't using a split disassembly, there should be a checksum fixer around here somewhere. I can't find it right now, but some searching should turn one up if you really need it.
     
  6. FraGag

    FraGag

    Tech Member
    The program to fix the checksum is included with the disassembly and runs when build.bat is executed. When editing a ROM, you have to fix it manually. However, direct ROM editing is very limiting, so I suggest you work with a disassembly instead, mostly if you plan to change the code.
     
  7. Ughh, I can't do anything to my hack other than level editing, and adding compressed art. If I edit the palette, and run build.bat, nothing. If I TRY SO (place french curse-word here) TO ADD SPINDASH TO S1 AND RUN BUILD.BAT, nothing. Anyone know why?
     
  8. HighFrictionZone

    HighFrictionZone

    Hi. Member
    855
    1
    16
    Katy, Texas
    Nothing
    Well, that would depends. How, exactly, are you editing the palette? What files are you changing? What files are you editing to get spindash? How does it produce nothing? Did you follow the guides to the letter? We need more information on what files you are editing, what tools you are editing them with, where all your hack files are located before we can figure out what the problem is.

    This is true of any help request: be as detailed and specific as possible on what you are trying to do, what you have already done, and any errors you get - the more details you give, the easier it is to figure out what exactly the problem is.
     
  9. I am editing the palette using Hivepal, by loading the rom and selecting a level. After that, when I'm done, I save and run build.bat. Nothing. I am using Lightning and Puto's guide for spindash and editing it using ConTEXT, and saving the file, buid, nothing.
     
  10. Chobbsy

    Chobbsy

    Member
    5
    2
    3
    Im not sure, because I haven't used hivepal since I downloaded SonMapEd, but doesn't it just edit the clean rom rather than the split files? Try splitting the edited rom in another place, and then move the pallet file over and build. That should edit the pallet for the built file.
     
  11. Argh, I was editing the palette, and clicked build.bat. I left Gens+ on btw. Then all of a sudden my S1BUILT file changed from 512MB to 1 MB. How do I fix this?
     
  12. Joaki

    Joaki

    AKA BombJack93 Member
    How can I change the Title Cards route dissassembly? "Green Hill" is that instead of "Blast Park" now it goes out for me. Thank you for any help!
     
  13. HighFrictionZone

    HighFrictionZone

    Hi. Member
    855
    1
    16
    Katy, Texas
    Nothing
    Erm. I think that it's SUPPOSED to be 1MB. That is, after all, the function of the rompad.exe, is it not? To pad the rom out to an even value? I don't know, all I know is that all my roms build to 1 MB. Regardless, does the palette work now? If it does, no problem! If not, well, must be something else.
     
  14. Malevolence

    Malevolence

    Tech Member
    274
    0
    16
    After you add a certain amount it will change it from 512-I'm stupid-kb-I'm stupid- to 1mb. If you did everything correctly it will still work.
     
  15. Hey I have a small problem. When I was done porting the Rev01 effects to my hack, I saved, and ran build.bat. Then, like I said before, instead of "S1BUILT", it was "s1built" and was 1 KB. Luckily, I had a copy, fixed the checksum on the copy, and then tried it out. What the problem is though that I think whenever I want to add something to the hack, it will become 1 KB. Is this true? If it is, can you please tell me anyway to prevent it? Thanks anyway.
     
  16. Malevolence

    Malevolence

    Tech Member
    274
    0
    16
    I had the same problem when I started out. This usually happens though. Half the time you work with assembly, you're fixing things. What you need to do when this happens is go into command prompt and get to the folder it's in (you type "cd thisisthelocationthefileisin" without quotation marks), then you press enter and now it says you are in the folder. Next you type in build and hit enter. If you had a problem it will be displayed as an error and you will have to find it in the rom, and fix it.
     
  17. Can you give a specific tutorial please?
     
  18. FraGag

    FraGag

    Tech Member
    To make it more simple, just open build.bat in Notepad (or any other text editor) and add this line at the very end:
    Code (Text):
    1. pause
    The messages will stay there until you press a key.
     
  19. Malevolence

    Malevolence

    Tech Member
    274
    0
    16
    Okay, let's say I want to make the Eggman object in Sonic 1 a valid object. I look up the code to see this:
    Code (ASM):
    1. Obj2E_ChkEggman:            ; XREF: Obj2E_Move
    2.         addq.b  #2,$24(a0)
    3.         move.w  #29,$1E(a0)
    4.         move.b  $1C(a0),d0
    5.         cmpi.b  #1,d0       ; does monitor contain Eggman?
    6.         bne.s   Obj2E_ChkSonic
    7.         rts         ; Eggman monitor does nothing
    Now, I'll add this at the end of it which should hurt sonic:
    :S I think that's pretty impossible, since flipping is handled by the VDP itself. Just for testing purposes, try putting a:
    Code (ASM):
    1.     bset #1,status(a0) ; set Y-flip bit
    2.     or.b  #6,render_flags(a0) ; set level-coordinate and Y-flip flags
    at the beginning of the object code. If it still doesn't flip, I have no idea what's wrong.

    Also, if by first bit you mean upmost bit, it's not the first bit, it's the second. (In other words, you need to add 4000 to the Y position for Y flip, not 8000)
    Let's say I accidently put HurtSoni instead of HurtSonic. I then go to build, but what, it's only one kb.
    Then we'll go to our command prompt to see what the problem is. In windows command prompt is found in accessories in all programs.
    So, we click on it and it should say right next to where you type c:\Documents and Settings\UserName>_
    What you do is type in cd TheAreaWhereYouClickBuild and then press enter. After that it should have that area as opposed to c:\Documents and Settings\UserName>_
    Now, type in build and press enter. In our case this will come up:
    Code (Text):
    1. > > >sonic1.asm<12698>: error: symbol undefined<-[K
    2. > > > HurtSoni<-[K
    3. > > >            jsr    HurtSoni<-[K
    4. > > >sonic1.asm<12689>: warning: address is not properly aligned<-[K
    5. > > >            jsr    HurtSoni<-[K
    6. > > >sonic1.asm<12698>: error: addressing mode not allowed here<-[K
    7. > > >            jsr    HurtSoni<-[K
    Now we know that there is something wrong here, and we should go fix it. In this case, it's obvious that HurtSonic was spelled incorrectly.
    Now go and fix it, and look, 512 KB just as it should be. Now that's not everything needed to make the eggman monitor to work.
    If you wanted to completely restore it (I might as well finish), you just need to put this before the other things you added:
    Code (ASM):
    1.         tst.b   ($FFFFFE2D).w   ; is Sonic invincible?
    2.         bne.s   ChkEggmanNO ; if yes, branch
    3.         tst.w   ($FFFFD030).w   ; is Sonic invulnerable?
    4.         bne.s   ChkEggmanNO ; if yes, branch
    Then add this right underneath the code:
    Code (ASM):
    1. ChkEggmanNO:
    2.         rts
    If those are not put, sonic will get hurt while invincible or when hurt right before (like the spike bug), and ChkEggmanNO will stop sonic from getting hurt.
    So, in the end your code should be this:
    Code (ASM):
    1. Obj2E_ChkEggman:            ; XREF: Obj2E_Move
    2.         addq.b  #2,$24(a0)
    3.         move.w  #29,$1E(a0)
    4.         move.b  $1C(a0),d0
    5.         cmpi.b  #1,d0       ; does monitor contain Eggman?
    6.         bne.s   Obj2E_ChkSonic
    7.         tst.b   ($FFFFFE2D).w   ; is Sonic invincible?
    8.         bne.s   ChkEggmanNO ; if yes, branch
    9.         tst.w   ($FFFFD030).w   ; is Sonic invulnerable?
    10.         bne.s   ChkEggmanNO ; if yes, branch
    11.         lea ($FFFFD000).w,a0
    12.         jsr HurtSonic
    13.  
    14. ChkEggmanNO:
    15.         rts
    And you you will be able to check the errors in your assembly file when needed.
    Also, as FraGag stated (which is a simpler way), but command prompt shows the same thing.
     
  20. Dark Sonic

    Dark Sonic

    Member
    14,631
    1,617
    93
    Working on my art!
    Where are the mappings located for the title screen in Sonic 1? Hard to edit the title screen art without them (I think I've looked through them all however I'm not too sure. I may have overlooked something).

    Still having the previous problem involving Title screen deformation. I've tried everything I can think of.