Sonic 2 Nick Arcade Disassembly

Discussion in 'Discussion and Q&A Archive' started by SuperEgg, Jul 21, 2011.

Thread Status:
Not open for further replies.
  1. SuperEgg

    SuperEgg I'm a guy that knows that you know that I know Member

    Joined:
    Oct 17, 2009
    Messages:
    Location:
    THE BEST GOD DAMN STATE OF TEXAS
    Oh thank goodness, it's MainMemory. I was wondering if anybody knew how to, b/c I will be releasing a final release of the disam soon, and wanted to have that capability.


    MainMemory, the compressions are as followed.


    8x8: Nemesis


    16x16: Uncompressed


    128x128: Uncompressed


    Layout: Uncompressed


    Collision Format: Kosinski


    Collision Compression: Uncompressed


    I hope this helps.
     
  2. Spanner

    Spanner The Tool Member

    Joined:
    Aug 9, 2007
    Messages:
    2,570
    Forgot about this thread, surprised to see it alive.


    Regarding equates, they ARE useful. If you want this on Retro's SVN eventually, I'd recommend that you stick to the structure laid out in the S2 SVN disassembly.
     
  3. SuperEgg

    SuperEgg I'm a guy that knows that you know that I know Member

    Joined:
    Oct 17, 2009
    Messages:
    Location:
    THE BEST GOD DAMN STATE OF TEXAS
    That matter was already solved Spanner. I've decided to release a version that has equates and one that doesn't. TBH, I'm planning on restarting the whole disam all together anyway, seeing as it doesn't work in Gens for some reason. But I really need to know about SonLVL, seeing at is becoming the next best thing since SonED.
     
  4. MainMemory

    MainMemory Well-Known Member Member

    Joined:
    Mar 29, 2011
    Messages:
    922
    You didn't mention that the level layouts used a modified version of Sonic 1's format with no loop flag.


    Also, I can't get GHZ1 to load, and SonED2 shows random blocks all over the place.
     
  5. Gardeguey

    Gardeguey Well-Known Member Member

    Joined:
    Aug 6, 2010
    Messages:
    82
    Location:
    México
    It's because the GHZ's chunks uses an uncracked compression format



    Code:
    MainLvlLoadBlk_Load128:
    
    		movea.l	(a2)+,a0
    
    		cmpi.b	#2,(RAM_Level_CurrentZone).w	;CPZ[MZ]?
    
    		beq.s	MainLvlLoadBlk_Default_128
    
    		cmpi.b	#3,(RAM_Level_CurrentZone).w	;EHZ[SLZ]?
    
    		beq.s	MainLvlLoadBlk_Default_128
    
    		cmpi.b	#4,(RAM_Level_CurrentZone).w	;HPZ[SYZ]?
    
    		beq.s	MainLvlLoadBlk_Default_128
    
    		cmpi.b	#5,(RAM_Level_CurrentZone).w	;HTZ[SBZ]?
    
    		beq.s	MainLvlLoadBlk_Default_128
    
     
    
    		move.l	a2,-(sp)			;Load chunks with the uncracked compression
    
    		moveq	#0,d1
    
    		moveq	#0,d2
    
    		move.w	(a0)+,d0
    
    		lea	(a0,d0.w),a1
    
    		lea	(RAM_MetablockTable).l,a2
    
    		lea	(RAM_LevelLayout).w,a3
    
     
    
    MainLvlLoadBlk_OldChkLoad_Loop:
    
    		bsr.w	UnknownDec
    
    		tst.w	d0
    
    		bmi.s	MainLvlLoadBlk_OldChkLoad_Loop
    
    		movea.l	(sp)+,a2
    
    		bra.s	MainLvlLoadBlk_LoadLayout
    
    ; ===============================================================================
    
     
    
    MainLvlLoadBlk_Default_128:
    
    		lea	(RAM_MetablockTable).l,a1
    
    		move.w	#$3FFF,d0
    
    MainLvlLoadBlk_Def_128_Loop:
    
    		move.w	(a0)+,(a1)+
    
    		dbf	d0,MainLvlLoadBlk_Def_128_Loop
     
  6. MainMemory

    MainMemory Well-Known Member Member

    Joined:
    Mar 29, 2011
    Messages:
    922
    In that case, I'm done with the INI (no object definitions). You can download it here, you'll need to update SonLVL first.
     
  7. SuperEgg

    SuperEgg I'm a guy that knows that you know that I know Member

    Joined:
    Oct 17, 2009
    Messages:
    Location:
    THE BEST GOD DAMN STATE OF TEXAS
    Hey GenesisFan64, I just realized, do you think it would be a good idea to have GHZ's chunks be in Kosinski Format? I could in theory code that in all together and make hacking like 9000 times easier.
     
  8. MainMemory

    MainMemory Well-Known Member Member

    Joined:
    Mar 29, 2011
    Messages:
    922
    Why not have GHZ's chunks in the same format as every other level's?
     
  9. SuperEgg

    SuperEgg I'm a guy that knows that you know that I know Member

    Joined:
    Oct 17, 2009
    Messages:
    Location:
    THE BEST GOD DAMN STATE OF TEXAS
    oh yeah, I could do that to. I'll get on it later this week and give you an update sir.
     
  10. Dark Lips

    Dark Lips Well-Known Member Member

    Joined:
    Nov 14, 2008
    Messages:
    293
    Location:
    Wolverhampton UK
    Thats a Bloody good idea :)
     
Thread Status:
Not open for further replies.