Add Spin Dash to Sonic 1/Part 1
From Sonic Retro
Revision as of 17:03, 4 November 2017 by MarioMario456 (talk | contribs)
Revision as of 17:03, 4 November 2017 by MarioMario456 (talk | contribs)
HELP!!!!!
I can't get S1Built.bin. Here's my Errors.txt:
SN 68k version 2.53 F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(9) : Error : Symbol 'spindash_flag' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(11) : Error : Symbol 'aniidsonani_duck' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(13) : Error : Symbol 'ctrl_1_press_logical' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(14) : Error : Symbol 'button_a_mask' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(14) : Error : Symbol 'button_c_mask' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(14) : Error : Symbol 'button_b_mask' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(16) : Error : Symbol 'aniidsonani_spindash' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(17) : Error : Symbol 'sndid_spindashrev' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(20) : Error : Symbol 'spindash_flag' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(21) : Error : Symbol 'spindash_counter' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(22) : Error : Symbol 'air_left' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(23) : Error : Symbol 'sonic_dust' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(25) : Error : Symbol 'anglepos' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(40) : Error : Symbol 'ctrl_1_held_logical' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(41) : Error : Symbol 'button_down' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(47) : Error : Symbol 'aniidsonani_roll' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(49) : Error : Symbol 'spindash_flag' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(51) : Error : Symbol 'spindash_counter' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(53) : Error : Symbol 'inertia' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(54) : Error : Symbol 'super_sonic_flag' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(56) : Error : Symbol 'inertia' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(58) : Error : Symbol 'inertia' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(64) : Error : Symbol 'horiz_scroll_delay_val' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(67) : Error : Symbol 'inertia' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(70) : Error : Symbol 'sonic_dust' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(71) : Error : Symbol 'sndid_spindashrelease' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(100) : Error : Symbol 'spindash_counter' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(102) : Error : Symbol 'spindash_counter' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(104) : Error : Symbol 'spindash_counter' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(106) : Error : Symbol 'spindash_counter' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(108) : Error : Symbol 'ctrl_1_press_logical' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(109) : Error : Symbol 'button_a_mask' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(109) : Error : Symbol 'button_c_mask' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(109) : Error : Symbol 'button_b_mask' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(111) : Error : Symbol 'aniidsonani_spindash' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(112) : Error : Symbol 'sndid_spindashrev' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(114) : Error : Symbol 'spindash_counter' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(115) : Error : Symbol 'spindash_counter' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(117) : Error : Symbol 'spindash_counter' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(122) : Error : Symbol 'camera_y_pos_bias' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(125) : Error : Symbol 'camera_y_pos_bias' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(126) : Error : Symbol 'camera_y_pos_bias' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SONIC SPINDASH.ASM(130) : Error : Symbol 'anglepos' not defined F:\SRC\SONIC4\SONED2\S1S\_INCOBJ\SUB REACTTOITEM.ASM(170) : Error : Symbol 'id_spindash' not defined Assembly completed. 44 error(s) from 53468 lines in 0.75 seconds--MarioMario456 (talk) 14:47, 13 October 2017 (CDT)
- You could try defining the undefined symbols
Lilggamegenuis (talk) 16:24, 20 October 2017 (CDT)
- Fixed,I was using the Sonic 2 GitHub disassembly and Sonic 1 GitHub disassembly. I'm now using the Sonic 2 Aurochs disassembly and Sonic 1 GitHub disassembly. Homewer, I have these problems and bugs:
- Tile Molester uses the default palette, making imposibble to add the Spindashing sprites.
- If I do a Spindash to the left, I'll go to the right instead.
Animated GIF of the problem:
My code:
; Start of subroutine Sonic_SpinDash Sonic_SpinDash: tst.b $39(a0) bne.s loc_1AC8E cmpi.b #id_Duck,obAnim(a0) bne.s locret_1AC8C move.b ($FFFFF603).w,d0 andi.b #$70,d0 beq.w locret_1AC8C move.b #id_Roll,obAnim(a0) move.w #$BE,d0 jsr (PlaySound_Special).l addq.l #4,sp move.b #1,$39(a0) move.w #0,$3A(a0) cmpi.b #$C,$28(a0) bcs.s loc_1AC84 move.b #2,($FFFFD11C).w loc_1AC84: bsr.w Sonic_LevelBound bsr.w Sonic_AnglePos locret_1AC8C: rts ; --------------------------------------------------------------------------- loc_1AC8E: move.b ($FFFFF602).w,d0 btst #1,d0 bne.w loc_1AD30 move.b #$E,$16(a0) move.b #7,$17(a0) move.b #id_Roll,obAnim(a0) addq.w #5,$C(a0) move.b #0,$39(a0) moveq #0,d0 move.b $3A(a0),d0 add.w d0,d0 move.w Dash_Speeds(pc,d0.w),obInertia(a0) loc_1ACF4: bset #2,$22(a0) move.b #0,($FFFFD11C).w move.w #$BC,d0 jsr (PlaySound_Special).l bra.s loc_1AD78 ; --------------------------------------------------------------------------- Dash_Speeds: dc.w $800 ; 0 dc.w $880 ; 1 dc.w $900 ; 2 dc.w $980 ; 3 dc.w $A00 ; 4 dc.w $A80 ; 5 dc.w $B00 ; 6 dc.w $B80 ; 7 dc.w $C00 ; 8 ; --------------------------------------------------------------------------- loc_1AD30: ; If still charging the dash... tst.w $3A(a0) beq.s loc_1AD48 move.w $3A(a0),d0 lsr.w #5,d0 sub.w d0,$3A(a0) bcc.s loc_1AD48 move.w #0,$3A(a0) loc_1AD48: move.b ($FFFFF603).w,d0 andi.b #$70,d0 ; 'p' beq.w loc_1AD78 ; move.w #$900,obAnim(a0) move.w #$BE,d0 ; 'à' jsr (PlaySound_Special).l addi.w #$200,$3A(a0) cmpi.w #$800,$3A(a0) bcs.s loc_1AD78 move.w #$800,$3A(a0) loc_1AD78: addq.l #4,sp cmpi.w #$60,($FFFFEED8).w beq.s loc_1AD8C bcc.s loc_1AD88 addq.w #4,($FFFFEED8).w loc_1AD88: subq.w #2,($FFFFEED8).w loc_1AD8C: bsr.w Sonic_LevelBound bsr.w Sonic_AnglePos move.w #$60,(v_lookshift).w rts ; End of subroutine Sonic_SpinDash
If you have a fix, give it to me. --MarioMario456 (talk) 16:03, 4 November 2017 (CDT)