don't click here

Chaotix Hacking (formerly Chaotix Level Editing)

Discussion in 'Engineering & Reverse Engineering' started by Andlabs, Jan 29, 2010.

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

    Andlabs

    「いっきまーす」 Wiki Sysop
    2,175
    1
    0
    Writing my own MD/Genesis sound driver :D
    Cool. The compression routine decompresses to... the same format used by the characters. The character art is written directly to the same output buffer, exactly to JJF's specification. I'll document this compression format over the next few hours and show you all what's involved.
     
  2. MarkeyJester

    MarkeyJester

    Original, No substitute Resident Jester
    2,218
    467
    63
    Japan
    First thing's first:

    Snap! (From Crackers)

    Code (ASM):
    1. ; ===========================================================================
    2. ; ---------------------------------------------------------------------------
    3. ; Subroutine to run object routines during the game
    4. ; ---------------------------------------------------------------------------
    5.  
    6. RunObjects:
    7.         lea ($FFFFD858).w,a6        ; load ram address of first object to run??
    8.  
    9. RO_NextObj:
    10.         move.w  $00(a6),d0              ; load ram address of next object to d0
    11.         bne.s   RO_ValidObj             ; if not null, an object is in the slot, so branch
    12.         rts                     ; return
    13.  
    14. RO_ValidObj:
    15.         movea.w d0,a6                   ; move ram address to a6
    16.         moveq   #$00,d0                 ; clear d0
    17.         move.w  $06(a6),d0              ; load object's ID
    18.         jsr RO_Routines(pc,d0.w)            ; jump to the correct object routine
    19.         bra.s   RO_NextObj              ; loop
    20.  
    21. ; ===========================================================================
    Also about that compression format, would it be possible to see the format algorithm routines? because I'm just wondering if...

    Code (ASM):
    1. ; ===========================================================================
    2. ; ---------------------------------------------------------------------------
    3. ; Crackers Decompression Algorithm
    4. ; ---------------------------------------------------------------------------
    5.  
    6. CracDec:
    7.         movem.l d1-d7/a2,-(sp)
    8.         move.w  (a0)+,d7
    9.         move.w  d7,d2
    10.         andi.w  #$3FFF,d7
    11.         eor.w   d7,d2
    12.         rol.w   #2,d2
    13.         moveq   #4,d1
    14.         sub.w   d2,d1
    15.         moveq   #1,d2
    16.         lsl.w   d1,d2
    17.         subq.w  #1,d2
    18.  
    19. loc_8856:
    20.         move.b  (a0)+,d5
    21.         moveq   #7,d6
    22.  
    23. loc_885A:
    24.         add.b   d5,d5
    25.         bcs.w   loc_8870
    26.         move.b  (a0)+,(a1)+
    27.         dbf d6,loc_885A
    28.         dbf d7,loc_8856
    29.         movem.l (sp)+,d1-d7/a2
    30.         rts
    31.  
    32. loc_8870:
    33.         moveq   #0,d3
    34.         move.b  (a0)+,d3
    35.         move.w  d3,d4
    36.         lsr.w   d1,d3
    37.         and.w   d2,d4
    38.         neg.w   d3
    39.         lea -1(a1,d3.w),a2
    40.         addq.w  #1,d4
    41.  
    42. loc_8882:
    43.         move.b  (a2)+,(a1)+
    44.         dbf d4,loc_8882
    45.         dbf d6,loc_885A
    46.         dbf d7,loc_8856
    47.         movem.l (sp)+,d1-d7/a2
    48.         rts
    49.  
    50. ; ===========================================================================
     
  3. ICEknight

    ICEknight

    Researcher Researcher
    Once you figure out these compression algorithms, please release something we can use to quickly check other games for this kind of data, like Nemesis did with that nemsrch.exe utility.

    We might be able to find compressed graphics in games we hadn't thought of, or even within the leftovers in any prototypes.
     
  4. Andlabs

    Andlabs

    「いっきまーす」 Wiki Sysop
    2,175
    1
    0
    Writing my own MD/Genesis sound driver :D
    Code (Text):
    1. THE BIT CYCLING ALGORITHM
    2. =========================
    3. The art compression revolves around a bit cycling algorithm that I don't understand:
    4.  
    5.     bitcycle(numbits):
    6.         output = 0
    7.         while numbits != 0 do
    8.             if maxbits == 0 then
    9.                 maxbits = 8
    10. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;datum = next byte in file << 24
    11. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;counter = numbits
    12. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if numbits > maxbits then
    13. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;counter = maxbits
    14. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;numbits = numbits - counter
    15. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;until counter == 0 do
    16. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;shift datum left, saving topmost bit in carry
    17. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rotate (carry bit, output) left
    18. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;maxbits = maxbits - 1
    19. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;counter = counter - 1
    20.  
    21.  
    22.  
    23. HEADER FORMAT
    24. =============
    25. OFFSET&nbsp;&nbsp;&nbsp;&nbsp;SIZE&nbsp;&nbsp;&nbsp;&nbsp;NAME&nbsp;&nbsp;&nbsp;&nbsp;DESCRIPTION
    26. 0&nbsp;&nbsp;&nbsp;&nbsp;Word&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Number of bytes in output data
    27. 2&nbsp;&nbsp;&nbsp;&nbsp;Byte&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Always 0x42 to identify input data as compressed
    28. 3&nbsp;&nbsp;&nbsp;&nbsp;Byte&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;base x coordinate (x0)
    29. 4&nbsp;&nbsp;&nbsp;&nbsp;Byte&nbsp;&nbsp;&nbsp;&nbsp;r5&nbsp;&nbsp;&nbsp;&nbsp;number of bits to cycle for x coordinates
    30. 5&nbsp;&nbsp;&nbsp;&nbsp;Byte&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;base y coordinate (y0)
    31. 6&nbsp;&nbsp;&nbsp;&nbsp;Byte&nbsp;&nbsp;&nbsp;&nbsp;r7&nbsp;&nbsp;&nbsp;&nbsp;number of bits to cycle for y coordinates
    32. 7&nbsp;&nbsp;&nbsp;&nbsp;Byte&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;base color value (c0)
    33. 8&nbsp;&nbsp;&nbsp;&nbsp;Byte&nbsp;&nbsp;&nbsp;&nbsp;r9&nbsp;&nbsp;&nbsp;&nbsp;number of bits to cycle for color value
    34.  
    35. I will use the name as a mnemonic throughout this specification. The name is the SH-2 register the value is assigned to in the original code.
    36.  
    37. The final x1 value is
    38. &nbsp;&nbsp;&nbsp;&nbsp;x1 = x0 + bitcycle(r5)
    39. The final y1 value is
    40. &nbsp;&nbsp;&nbsp;&nbsp;y1 = (y0 + bitcycle(r6)) << 8
    41.  
    42. So the program beings with
    43.  
    44. &nbsp;&nbsp;&nbsp;&nbsp;write word x0
    45. &nbsp;&nbsp;&nbsp;&nbsp;write word x1
    46. &nbsp;&nbsp;&nbsp;&nbsp;write word (y0 << 8)
    47. &nbsp;&nbsp;&nbsp;&nbsp;write word y1
    48.  
    49.  
    50.  
    51. DATA
    52. ====
    53. Now begins each line:
    54.  
    55. &nbsp;&nbsp;&nbsp;&nbsp;x0_line = bitcycle(r5) + x0
    56. &nbsp;&nbsp;&nbsp;&nbsp;x1_line = bitcycle(r5) + x0
    57.  
    58. If x1_line == x0_line then the art is fully decompressed. Otherwise processing continues:
    59.  
    60. &nbsp;&nbsp;&nbsp;&nbsp;write byte x0_line
    61. &nbsp;&nbsp;&nbsp;&nbsp;write byte x1_line
    62. &nbsp;&nbsp;&nbsp;&nbsp;n_pixels_per_line = x1_line - x0_line
    63. &nbsp;&nbsp;&nbsp;&nbsp;y_line = (bitcycle(r7) + y0) << 8
    64. &nbsp;&nbsp;&nbsp;&nbsp;write word y_line
    65. &nbsp;&nbsp;&nbsp;&nbsp;until n_pixels_per_line == 0 do
    66. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pixel_color_value = bitcycle(r9) + c0
    67. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if pixel_color_value == 0 then
    68. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pixel_color_value = fallback_pixel_color
    69. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;write byte pixel_color_value
    70. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;n_pixels_per_line = n_pixels_per_line - 1
    71.  
    72. The fallback pixel color is either 0x80 or another color determined at runtime by the drawing routine. After the loop terminates, we go back to the x0_line/x1_line calculations; we have finished processing this line.
    I don't understand the bitcycle() routine, but there you have it. Here's the original SH-2 code:

    Code (Text):
    1. ROM:0600075A
    2. ROM:0600075A; =============== S U B R O U T I N E =======================================
    3. ROM:0600075A
    4. ROM:0600075A; r1 - input data
    5. ROM:0600075A; r2 - output buffer
    6. ROM:0600075A
    7. ROM:0600075A DrawArt32X:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;; CODE XREF: PossiblyDoTheDrawing+22p
    8. ROM:0600075A&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;; ROM:06000C0Ap
    9. ROM:0600075A&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.b&nbsp;&nbsp; @(2,r1), r0
    10. ROM:0600075C&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cmp/eq&nbsp;&nbsp;#h'42, r0; 'B'
    11. ROM:0600075E&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bf&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DrawUncompressedArt
    12. ROM:06000760&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; r14, @-r15&nbsp;&nbsp;&nbsp;&nbsp;; Draws compressed art
    13. ROM:06000762&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; r13, @-r15
    14. ROM:06000764&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; r12, @-r15
    15. ROM:06000766&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; r11, @-r15
    16. ROM:06000768&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; r10, @-r15
    17. ROM:0600076A&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; r9, @-r15
    18. ROM:0600076C&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; r8, @-r15
    19. ROM:0600076E&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; r7, @-r15
    20. ROM:06000770&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; r6, @-r15
    21. ROM:06000772&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; r5, @-r15
    22. ROM:06000774&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; r4, @-r15
    23. ROM:06000776&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; r2, @-r15
    24. ROM:06000778&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; r1, @-r15
    25. ROM:0600077A&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sts.l&nbsp;&nbsp; pr, @-r15
    26. ROM:0600077C&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.w&nbsp;&nbsp; @r1+, r0
    27. ROM:0600077E&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add&nbsp;&nbsp;&nbsp;&nbsp; #1, r1
    28. ROM:06000780&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; extu.w&nbsp;&nbsp;r0, r0
    29. ROM:06000782&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; r0, @-r15
    30. ROM:06000784&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.b&nbsp;&nbsp; @r1+, r4
    31. ROM:06000786&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.b&nbsp;&nbsp; @r1+, r5
    32. ROM:06000788&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.b&nbsp;&nbsp; @r1+, r6
    33. ROM:0600078A&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.b&nbsp;&nbsp; @r1+, r7
    34. ROM:0600078C&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.b&nbsp;&nbsp; @r1+, r8
    35. ROM:0600078E&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.b&nbsp;&nbsp; @r1+, r9
    36. ROM:06000790&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; #0, r14
    37. ROM:06000792&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.w&nbsp;&nbsp; r4, @r2
    38. ROM:06000794&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bsr&nbsp;&nbsp;&nbsp;&nbsp; BitCycleForCompressedArt; r12 - number of bits to cycle
    39. ROM:06000796&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; r5, r12
    40. ROM:06000798&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add&nbsp;&nbsp;&nbsp;&nbsp; r4, r0
    41. ROM:0600079A&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.w&nbsp;&nbsp; r0, @(2,r2)
    42. ROM:0600079C&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add&nbsp;&nbsp;&nbsp;&nbsp; #4, r2
    43. ROM:0600079E&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; r6, r0
    44. ROM:060007A0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; shll8&nbsp;&nbsp; r0
    45. ROM:060007A2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.w&nbsp;&nbsp; r0, @r2
    46. ROM:060007A4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bsr&nbsp;&nbsp;&nbsp;&nbsp; BitCycleForCompressedArt; r12 - number of bits to cycle
    47. ROM:060007A6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; r7, r12
    48. ROM:060007A8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add&nbsp;&nbsp;&nbsp;&nbsp; r6, r0
    49. ROM:060007AA&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; shll8&nbsp;&nbsp; r0
    50. ROM:060007AC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.w&nbsp;&nbsp; r0, @(2,r2)
    51. ROM:060007AE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bra&nbsp;&nbsp;&nbsp;&nbsp; loc_60007D6
    52. ROM:060007B0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add&nbsp;&nbsp;&nbsp;&nbsp; #4, r2
    53. ROM:060007B2; ---------------------------------------------------------------------------
    54. ROM:060007B2
    55. ROM:060007B2 loc_60007B2:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;; CODE XREF: DrawArt32X+8Ej
    56. ROM:060007B2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sub&nbsp;&nbsp;&nbsp;&nbsp; r10, r0
    57. ROM:060007B4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; r0, r10
    58. ROM:060007B6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bsr&nbsp;&nbsp;&nbsp;&nbsp; BitCycleForCompressedArt; r12 - number of bits to cycle
    59. ROM:060007B8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; r7, r12
    60. ROM:060007BA&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add&nbsp;&nbsp;&nbsp;&nbsp; r6, r0
    61. ROM:060007BC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; shll8&nbsp;&nbsp; r0
    62. ROM:060007BE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.w&nbsp;&nbsp; r0, @(2,r2)
    63. ROM:060007C0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add&nbsp;&nbsp;&nbsp;&nbsp; #4, r2
    64. ROM:060007C2
    65. ROM:060007C2 loc_60007C2:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;; CODE XREF: DrawArt32X+78j
    66. ROM:060007C2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bsr&nbsp;&nbsp;&nbsp;&nbsp; BitCycleForCompressedArt; r12 - number of bits to cycle
    67. ROM:060007C4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; r9, r12
    68. ROM:060007C6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add&nbsp;&nbsp;&nbsp;&nbsp; r8, r0
    69. ROM:060007C8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tst&nbsp;&nbsp;&nbsp;&nbsp; r0, r0
    70. ROM:060007CA&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bt/s&nbsp;&nbsp;&nbsp;&nbsp;loc_60007D0
    71. ROM:060007CC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dt&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r10
    72. ROM:060007CE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add&nbsp;&nbsp;&nbsp;&nbsp; r3, r0
    73. ROM:060007D0
    74. ROM:060007D0 loc_60007D0:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;; CODE XREF: DrawArt32X+70j
    75. ROM:060007D0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.b&nbsp;&nbsp; r0, @r2
    76. ROM:060007D2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bf/s&nbsp;&nbsp;&nbsp;&nbsp;loc_60007C2
    77. ROM:060007D4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add&nbsp;&nbsp;&nbsp;&nbsp; #1, r2
    78. ROM:060007D6
    79. ROM:060007D6 loc_60007D6:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;; CODE XREF: DrawArt32X+54j
    80. ROM:060007D6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bsr&nbsp;&nbsp;&nbsp;&nbsp; BitCycleForCompressedArt; r12 - number of bits to cycle
    81. ROM:060007D8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; r5, r12
    82. ROM:060007DA&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add&nbsp;&nbsp;&nbsp;&nbsp; r4, r0
    83. ROM:060007DC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.b&nbsp;&nbsp; r0, @r2
    84. ROM:060007DE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; r0, r10
    85. ROM:060007E0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bsr&nbsp;&nbsp;&nbsp;&nbsp; BitCycleForCompressedArt; r12 - number of bits to cycle
    86. ROM:060007E2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; r5, r12
    87. ROM:060007E4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add&nbsp;&nbsp;&nbsp;&nbsp; r4, r0
    88. ROM:060007E6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cmp/eq&nbsp;&nbsp;r10, r0
    89. ROM:060007E8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bf/s&nbsp;&nbsp;&nbsp;&nbsp;loc_60007B2
    90. ROM:060007EA&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.b&nbsp;&nbsp; r0, @(1,r2)
    91. ROM:060007EC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; #0, r0
    92. ROM:060007EE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.w&nbsp;&nbsp; r0, @r2
    93. ROM:060007F0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; @r15+, r0
    94. ROM:060007F2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lds.l&nbsp;&nbsp; @r15+, pr
    95. ROM:060007F4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; @r15+, r1
    96. ROM:060007F6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; @r15+, r2
    97. ROM:060007F8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; @r15+, r4
    98. ROM:060007FA&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; @r15+, r5
    99. ROM:060007FC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; @r15+, r6
    100. ROM:060007FE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; @r15+, r7
    101. ROM:06000800&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; @r15+, r8
    102. ROM:06000802&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; @r15+, r9
    103. ROM:06000804&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; @r15+, r10
    104. ROM:06000806&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; @r15+, r11
    105. ROM:06000808&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; @r15+, r12
    106. ROM:0600080A&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; @r15+, r13
    107. ROM:0600080C&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rts
    108. ROM:0600080E&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; @r15+, r14
    109. ROM:06000810; ---------------------------------------------------------------------------
    110. ROM:06000810
    111. ROM:06000810 DrawUncompressedArt:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;; CODE XREF: DrawArt32X+4j
    112. ROM:06000810&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;; ROM:06000AA8j ...
    113. ROM:06000810&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; r4, @-r15
    114. ROM:06000812&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; r2, @-r15
    115. ROM:06000814&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; r1, @-r15
    116. ROM:06000816&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; #4, r4
    117. ROM:06000818
    118. ROM:06000818 loc_6000818:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;; CODE XREF: DrawArt32X+C4j
    119. ROM:06000818&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.w&nbsp;&nbsp; @r1+, r0
    120. ROM:0600081A&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dt&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r4
    121. ROM:0600081C&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.w&nbsp;&nbsp; r0, @r2
    122. ROM:0600081E&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bf/s&nbsp;&nbsp;&nbsp;&nbsp;loc_6000818
    123. ROM:06000820&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add&nbsp;&nbsp;&nbsp;&nbsp; #2, r2
    124. ROM:06000822&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bt&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;loc_600083C
    125. ROM:06000824
    126. ROM:06000824 loc_6000824:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;; CODE XREF: DrawArt32X+ECj
    127. ROM:06000824&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sub&nbsp;&nbsp;&nbsp;&nbsp; r4, r0
    128. ROM:06000826&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.w&nbsp;&nbsp; @r1+, r4
    129. ROM:06000828&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.w&nbsp;&nbsp; r4, @r2
    130. ROM:0600082A&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add&nbsp;&nbsp;&nbsp;&nbsp; #2, r2
    131. ROM:0600082C
    132. ROM:0600082C loc_600082C:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;; CODE XREF: DrawArt32X+DEj
    133. ROM:0600082C&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.b&nbsp;&nbsp; @r1+, r4
    134. ROM:0600082E&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tst&nbsp;&nbsp;&nbsp;&nbsp; r4, r4
    135. ROM:06000830&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bt/s&nbsp;&nbsp;&nbsp;&nbsp;loc_6000836
    136. ROM:06000832&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dt&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r0
    137. ROM:06000834&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add&nbsp;&nbsp;&nbsp;&nbsp; r3, r4
    138. ROM:06000836
    139. ROM:06000836 loc_6000836:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;; CODE XREF: DrawArt32X+D6j
    140. ROM:06000836&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.b&nbsp;&nbsp; r4, @r2
    141. ROM:06000838&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bf/s&nbsp;&nbsp;&nbsp;&nbsp;loc_600082C
    142. ROM:0600083A&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add&nbsp;&nbsp;&nbsp;&nbsp; #1, r2
    143. ROM:0600083C
    144. ROM:0600083C loc_600083C:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;; CODE XREF: DrawArt32X+C8j
    145. ROM:0600083C&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.b&nbsp;&nbsp; @r1+, r4
    146. ROM:0600083E&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.b&nbsp;&nbsp; @r1+, r0
    147. ROM:06000840&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.b&nbsp;&nbsp; r4, @r2
    148. ROM:06000842&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.b&nbsp;&nbsp; r0, @(1,r2)
    149. ROM:06000844&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cmp/eq&nbsp;&nbsp;r4, r0
    150. ROM:06000846&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bf/s&nbsp;&nbsp;&nbsp;&nbsp;loc_6000824
    151. ROM:06000848&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add&nbsp;&nbsp;&nbsp;&nbsp; #2, r2
    152. ROM:0600084A&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; r2, r0
    153. ROM:0600084C&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; @r15+, r1
    154. ROM:0600084E&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; @r15+, r2
    155. ROM:06000850&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.l&nbsp;&nbsp; @r15+, r4
    156. ROM:06000852&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rts
    157. ROM:06000854&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sub&nbsp;&nbsp;&nbsp;&nbsp; r2, r0
    158. ROM:06000854; End of function DrawArt32X
    159. ROM:06000854
    160. ROM:06000856
    161. ROM:06000856; =============== S U B R O U T I N E =======================================
    162. ROM:06000856
    163. ROM:06000856; r12 - number of bits to cycle
    164. ROM:06000856
    165. ROM:06000856 BitCycleForCompressedArt:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ; CODE XREF: DrawArt32X+3Ap
    166. ROM:06000856&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;; DrawArt32X+4Ap ...
    167. ROM:06000856&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; #0, r0
    168. ROM:06000858&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cmp/pl&nbsp;&nbsp;r12
    169. ROM:0600085A&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bf&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;loc_6000880
    170. ROM:0600085C
    171. ROM:0600085C loc_600085C:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;; CODE XREF: BitCycleForCompressedArt+28j
    172. ROM:0600085C&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tst&nbsp;&nbsp;&nbsp;&nbsp; r14, r14
    173. ROM:0600085E&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bf&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;loc_6000868
    174. ROM:06000860&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov.b&nbsp;&nbsp; @r1+, r13
    175. ROM:06000862&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; #8, r14
    176. ROM:06000864&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; shll16&nbsp;&nbsp;r13
    177. ROM:06000866&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; shll8&nbsp;&nbsp; r13
    178. ROM:06000868
    179. ROM:06000868 loc_6000868:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;; CODE XREF: BitCycleForCompressedArt+8j
    180. ROM:06000868&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cmp/hi&nbsp;&nbsp;r14, r12
    181. ROM:0600086A&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bf/s&nbsp;&nbsp;&nbsp;&nbsp;loc_6000870
    182. ROM:0600086C&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; r12, r11
    183. ROM:0600086E&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; r14, r11
    184. ROM:06000870
    185. ROM:06000870 loc_6000870:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;; CODE XREF: BitCycleForCompressedArt+14j
    186. ROM:06000870&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sub&nbsp;&nbsp;&nbsp;&nbsp; r11, r12
    187. ROM:06000872
    188. ROM:06000872 loc_6000872:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;; CODE XREF: BitCycleForCompressedArt+22j
    189. ROM:06000872&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; shll&nbsp;&nbsp;&nbsp;&nbsp;r13
    190. ROM:06000874&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rotcl&nbsp;&nbsp; r0
    191. ROM:06000876&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dt&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r11
    192. ROM:06000878&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bf/s&nbsp;&nbsp;&nbsp;&nbsp;loc_6000872
    193. ROM:0600087A&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add&nbsp;&nbsp;&nbsp;&nbsp; #-1, r14
    194. ROM:0600087C&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tst&nbsp;&nbsp;&nbsp;&nbsp; r12, r12
    195. ROM:0600087E&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bf&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;loc_600085C
    196. ROM:06000880
    197. ROM:06000880 loc_6000880:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;; CODE XREF: BitCycleForCompressedArt+4j
    198. ROM:06000880&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rts
    199. ROM:06000882&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; nop
    200. ROM:06000882; End of function BitCycleForCompressedArt
    201. ROM:06000882
     
  5. Andlabs

    Andlabs

    「いっきまーす」 Wiki Sysop
    2,175
    1
    0
    Writing my own MD/Genesis sound driver :D
    [​IMG][​IMG]
    Heran Bago told me over AIM that modifying the object table gives you a monitor with this, and I have seen two chunks of unidentified code that modifies OST values in the monitor code, meaning that the initialization for whatever this monitor did is still intact, but the actual code isn't. The palette shown hers is arbitrary; I'll add a way to select palettes and show uncompressed art and release a viewer tomorrow or Wednesday.
     
  6. Andlabs

    Andlabs

    「いっきまーす」 Wiki Sysop
    2,175
    1
    0
    Writing my own MD/Genesis sound driver :D
    WHAT IS THIS I DON'T EVEN

    [​IMG]
    [​IMG]
    [​IMG]
    [​IMG]
     
  7. amphobius

    amphobius

    doing more important things with my life Member
    2,120
    0
    16
    life
    HOLY FUCKING SHIT.

    Wasn't expecting that.
     
  8. MarkeyJester

    MarkeyJester

    Original, No substitute Resident Jester
    2,218
    467
    63
    Japan
    Oh wow wait, that was in chaotix? me thinks that Sonic and tails were in the rom for a good long time during production.
     
  9. E-122-Psi

    E-122-Psi

    Member
    2,471
    612
    93
    ??!?!?!!!!?!

    Interesting to see Tails in Chaotix sprite form, even if it's just his face (for now?....).

    That said Chaotix always seemed like a kinda rushed title, so it doesn't surprise me there is a fair amount of unused stuff in the games memory.
     
  10. Black Squirrel

    Black Squirrel

    no reverse gear Wiki Sysop
    8,759
    2,646
    93
    Northumberland, UK
    steamboat wiki
    Wow

    Shame Tails wasn't in the game - it looks like he'd have a nice sprite.
     
  11. McAleeCh

    McAleeCh

    Oldbie
    1,479
    532
    93
    Oooh, quite a find there. I assume that's in the final, right? If so, might be worth looking through some of the Chaotix protos that were part of drx's mass proto release when you're done; see if there's any leftovers in those that were cleaned up before the final release.

    Looking at it, the first thing that comes to my mind is the S3&K ending sequence. Isn't that, like, the only other time we see the plane flying to the left of the screen? In fact, come to think of it, doesn't a larger piece of artwork of Sonic & Tails on the Tornado appear in Chaotix's good ending? Could this at one point have been intended as part of an ending sequence? Whatever it's for, I see the Chaotix art team actually bothered to fix the "SONIC" on the side - S3&K just mirrored the plane for the ending sequence since it's seen flying right in all other instances, so the letters were mirror-image in that game.

    Looking forward to any further discoveries! = )
     
  12. Hanoch

    Hanoch

    Also known as TheKnock, Birashot Member
    491
    0
    0
    Israel
    everything
    Does that mean tails can beat the crap out of badniks with that lazer cannon?
     
  13. Black Squirrel

    Black Squirrel

    no reverse gear Wiki Sysop
    8,759
    2,646
    93
    Northumberland, UK
    steamboat wiki
    [​IMG]
    Not entirely sure if the animation is correct but yeah
     
  14. E-122-Psi

    E-122-Psi

    Member
    2,471
    612
    93
    Likely a lot faster to give a bit of a motion blur and swaying up and down like the S+K version. I like it though.
     
  15. Andlabs

    Andlabs

    「いっきまーす」 Wiki Sysop
    2,175
    1
    0
    Writing my own MD/Genesis sound driver :D
    The screenshots above have a border drawn over the outermost pixels because .net is stupid and border style FixedSingle does that. I will be releasing my viewer later so you can use that for more accurate GIFs.
     
  16. Overlord

    Overlord

    Now playable in Smash Bros Ultimate Moderator
    19,298
    1,001
    93
    Long-term happiness
    Holy shit new Tornado design. Very nice =P
     
  17. Diablohead

    Diablohead

    Indie dev Oldbie
    1,898
    87
    28
    Near London
    games
    What else can I say apart from cool :D
     
  18. Mastered Realm

    Mastered Realm

    Member
    3,832
    558
    93
    -
    [​IMG]

    Edited the gif, I think that is the animation.

    Lol it seems I fucked one color up.

    EDIT:

    [​IMG]

    Fix'd.
     
  19. SGR

    SGR

    Give me the gams. Member
    This really doesn't make a lot of sense to me. andlabs told me this was discovered in the final. How come we weren't able to find it in the 1207 proto? All art in that proto (to my knowledge) is uncompressed. Did they attempt to put Tails in after all? According to what andlabs has told me this was found in a section where a lot of the sprites used the 32x's scaling. It could be a potential alternate ending that was planned, or maybe something more or different entirely. The world may never know and it's such a shame Tails got scrapped. :/
     
  20. Mastered Realm

    Mastered Realm

    Member
    3,832
    558
    93
    -
    NOW That makes sense to me. That's is simply the proto art for the credits, on which, Tails appears on a plane.

    Anyway =P. If that is true, I'm glad they replaced it, 'cause the final is much more detailed.
     
Thread Status:
Not open for further replies.