processor 6502 include "vcs.h" include "macro.h" MAC LineaMarquee LDX #4 ; 192 Scanlines to Display LDY #0 .Draw_Picture ;LDA #0 ;STA PF0 ;STA PF1 ;STA PF2 LDA {1},Y ADC {2},Y STA $BE,X LDA {3},Y ADC {4},Y STA $C3,X LDA {5},Y ADC {6},Y STA $C8,X LDA {7},Y ADC {8},Y STA $CD,X LDA {9},Y ADC {10},Y STA $D3,X INY DEX BNE .Draw_Picture ENDM ; MAC LineaMarqueeEx ; LDA #8 ; STA $80 ;.DoblePasada ; STA WSYNC ; LDA $D9,Y ; STA PF0 ; LDA $DE,Y ; STA PF1 ; LDA $E4,Y ; STA PF2 ; SLEEP 12 ; LDA $E9,Y ; STA PF0 ; LDA $EE,Y ; STA PF1 ; LDA $F4,Y ; STA PF2 ; ; DEC $80 ; BNE .DoblePasada ; JMP Retorno ; ENDM MAC Linea1old LDX #4 ; 192 Scanlines to Display LDY #0 .Draw_Picture LDA #0 STA PF0 STA PF1 STA PF2 LDA {2},Y ADC {3},Y STA $92 LDA {4},Y ADC {5},Y STA $93 LDA {7},Y ADC {8},Y STA $94 LDA {9},Y ADC {10},Y STA $95 LDA #8 STA $80 .DoblePasada STA WSYNC LDA {1},Y STA PF0 LDA $92 STA PF1 LDA $93 STA PF2 SLEEP 12 LDA {6},Y STA PF0 LDA $94 STA PF1 LDA $95 STA PF2 DEC $80 BNE .DoblePasada INY DEX BNE .Draw_Picture JMP _Retorno ENDM MAC Linea2old LDX #4 ; 192 Scanlines to Display LDY #0 .Draw_Picture2 LDA #0 STA PF0 STA PF1 STA PF2 LDA {2},Y ADC {3},Y STA $92 LDA {4},Y ADC {5},Y STA $93 LDA {7},Y ADC {8},Y STA $94 LDA {9},Y ADC {10},Y STA $95 LDA #8 STA $80 .DoblePasada2 STA WSYNC LDA {1},Y STA PF0 LDA $92 STA PF1 LDA $93 STA PF2 SLEEP 12 LDA {6},Y STA PF0 LDA $94 STA PF1 LDA $95 STA PF2 DEC $80 BNE .DoblePasada2 INY DEX BNE .Draw_Picture2 JMP _Retorno2 ENDM MAC _Linea1 LDA <#{1} STA $92 LDA >#{1} STA $93 LDA <#{2} STA $94 LDA >#{2} STA $95 LDA <#{3} STA $96 LDA >#{3} STA $97 LDA <#{4} STA $98 LDA >#{4} STA $99 JSR _Linea JMP _Retorno ENDM MAC Linea2 LDA <#{1} STA $92 LDA >#{1} STA $93 LDA <#{2} STA $94 LDA >#{2} STA $95 LDA <#{3} STA $96 LDA >#{3} STA $97 LDA <#{4} STA $98 LDA >#{4} STA $99 JSR _Linea JMP _Retorno2 ENDM MAC Linea1 LDA <#{1} STA $92 LDA >#{1} STA $93 LDA <#{2} STA $94 LDA >#{2} STA $95 LDA <#{3} STA $96 LDA >#{3} STA $97 LDA <#{4} STA $98 LDA >#{4} STA $99 JSR Linea JMP Retorno ENDM MAC Linea2 LDA <#{1} STA $92 LDA >#{1} STA $93 LDA <#{2} STA $94 LDA >#{2} STA $95 LDA <#{3} STA $96 LDA >#{3} STA $97 LDA <#{4} STA $98 LDA >#{4} STA $99 JSR Linea JMP Retorno2 ENDM MAC Linea1pir LDX #4 ; 192 Scanlines to Display LDY #0 .Draw_Picture LDA #0 STA PF0 STA PF1 STA PF2 LDA {2},Y ADC {3},Y STA $92 LDA {4},Y ADC {5},Y STA $93 LDA {7},Y ADC {8},Y STA $94 LDA {9},Y ADC {10},Y STA $95 LDA #8 STA $80 .DoblePasada STA WSYNC LDA {1},Y STA PF0 LDA $92 STA PF1 LDA $93 STA PF2 SLEEP 12 LDA {6},Y STA PF0 LDA $94 STA PF1 LDA $95 STA PF2 DEC $80 BNE .DoblePasada INY DEX BNE .Draw_Picture JMP Retorn ENDM MAC Linea2pir LDX #4 ; 192 Scanlines to Display LDY #0 .Draw_Picture2 LDA #0 STA PF0 STA PF1 STA PF2 LDA {2},Y ADC {3},Y STA $92 LDA {4},Y ADC {5},Y STA $93 LDA {7},Y ADC {8},Y STA $94 LDA {9},Y ADC {10},Y STA $95 LDA #8 STA $80 .DoblePasada2 STA WSYNC LDA {1},Y STA PF0 LDA $92 STA PF1 LDA $93 STA PF2 SLEEP 12 LDA {6},Y STA PF0 LDA $94 STA PF1 LDA $95 STA PF2 DEC $80 BNE .DoblePasada2 INY DEX BNE .Draw_Picture2 JMP Retorn2 ENDM Gris = 8 Marron = 4*8 Verde = 3*16 + 10 Naranja = 4*16 + 10 Celeste = 9*16 + 14 Azul = 11*16 + 4 Amarillo = 2*16 + 14 ; es amarillo? Rojo = 6*16 + 4 ; es rojo? PunteroRoom = $86 PunteroRoomBKP = $8C TieneObjeto = 1 Guante = 2 Lamp = 4 Llave = 8 PushQ = 16 Dia2 = 32 Inventario = $8E ControlBoton = $8F Temp = $91 DuracionNota = $A2 Noparray = $A8 Personaje = $A9 TogCamina = $AB ContaX = $AC Vueltas = $AD TogPersonaje = $AE Personaje1 = $AF Personaje2 = $B1 Vueltas1 = $B3 Vueltas2 = $B4 ContAnim = $B5 PuntAnim = $B6 SaltAnim = $B7 Noparray2 = $B9 RoomP1 = $BA RoomP2 = $BB Bck = $BC Bck2 = $BE Bck3 = $C0 ContaY = $C3 ColPir = $C4 ColPir2 = $C5 Toca = $C6 Agarra = $C7 AgFlag = $C8 CamFlag = $C9 EstadoJuego = $CA TocaMedio = $CB Puntaje = $F3 Backg3 = $F8 Backg = $FA Backg2 = $FC C_7 = 0 C_6 = 1 F_5 = 2 C_5 = 3 Gs_4 = 4 F_4 = 5 D_4 = 6 C_4 = 7 As_3 = 8 Gs_3 = 9 Fs_3 = 10 F_3 = 11 Ds_3 = 12 D_3 = 13 Cs_3 = 14 C_3 = 15 B_2 = 16 As_2 = 17 A_2 = 18 Gs_2 = 19 G_2 = 20 Fs_2 = 21 F_2 = 23 E_2 = 24 Ds_2 = 25 D_2 = 27 Cs_2 = 29 C_2 = 30 ;///////////////// Start of Code ///////////////////////////////////// SEG ORG $D000 RORG $F000 JMP _Sajmp _Sabnk LDA $1FF8 NOP NOP NOP NOP JMP _Sajmp ;_Start_Frame _Sajmp _Reset ; Clear RAM, TIA registers and Set Stack Pointer to #$FF SEI CLD LDX #$FF TXS LDA #0 _Clear_Mem STA 0,X DEX BNE _Clear_Mem LDA #$00 STA COLUBK ; Set Background to Black ;LDA #15*8 ;STA COLUPF ;LDA #0 LDA #TieneObjeto STA Inventario LDA #2 STA $81 LDA <#_Habitacion1 STA PunteroRoom STA PunteroRoomBKP LDA >#_Habitacion1 STA PunteroRoom + 1 STA PunteroRoomBKP + 1 ;LDA PunteroRoom ;ADC #4 ;STA PunteroRoom ;LDA <#WELCOME ;;LDY #0 ;;LDA (PunteroRoom),Y ;STA $82 ;LDA >#WELCOME ;;INY ;;LDA (PunteroRoom),Y ;STA $83 ;LDA <#SOMETHING ;;INY ;;LDA (PunteroRoom),Y ;STA $84 ;LDA >#SOMETHING ;;INY ;;LDA (PunteroRoom),Y ;STA $85 LDA <#_CeroLin1;LineaMarqueeEx STA $82 LDA >#_CeroLin1;LineaMarqueeEx STA $83 LDA <#_IslaBack;CeroLine STA $84 LDA >#_IslaBack;CeroLine STA $85 ;LineaMarquee W1,E2,L3,C4,O1,M1,E2,Cero, Cero, Cero LDA <#_Isla;DibujaHabitacion3;Calle1 STA $88 LDA >#_Isla;DibujaHabitacion3;Calle1 STA $89 ;LDA <#Pirata2;Calle2 ;STA $8A ;LDA >#Pirata2;Calle2 ;STA $8B LDA #1 STA AUDC0 LDA #0;10 STA AUDV0 LDA #34;150;146;10 STA $A1 LDA <#_Melodia STA $A3 LDA >#_Melodia STA $A4 LDA #80 STA $A5 ;LDA <#Nops7 ;STA $A6 ;LDA >#Nops7 ;STA $A7 ;LDA <#CeroP ;STA Personaje1 ;LDA >#CeroP ;STA Personaje1 + 1 ;LDA #2 ;STA Vueltas ;STA Vueltas1 ;LDA #3 ;STA Vueltas2 LDA #0 STA Vueltas STA Vueltas1 STA Vueltas2 LDA #0;13;14 STA ContaX ;LDA <#CeroP ;STA Personaje2 ;LDA >#CeroP ;STA Personaje2 + 1 LDA Personaje2 ADC #5 STA Personaje2 LDA #10;255;50 STA ContAnim LDA #18 STA Noparray2 LDA <#_Arcos22 - 20 STA Backg LDA >#_Arcos22 STA Backg + 1 LDA <#_Arcos22_2 - 20 STA Backg2 sta Backg3 LDA >#_Arcos22_2 STA Backg2 + 1 sta Backg3 + 1 LDA #0 STA HMP0 LDA <#_ColorP STA Vueltas1 LDA >#_ColorP STA Vueltas2 ;/////////////////// Picture Starts Here ///////////////////////////// _Start_Frame lda #22 sta T1024T LDA Vueltas BEQ _VCero LDA #0 STA Vueltas STA HMP0 JMP _VSal _VCero LDA #1 STA Vueltas _VSal LDY PuntAnim LDA _Anim,Y STA SaltAnim INY LDA _Anim,Y STA SaltAnim + 1 JMP (SaltAnim) _RetornoAnim lda #0 sta CamFlag ;JMP Marquesina _RetornoMarq LDA #8 STA COLUPF ; Start VSYNC LDA #2 STA VSYNC STA WSYNC STA WSYNC STA WSYNC ; 3 Scanlines of VSYNC LDA #0 STA VSYNC ; End VSYNC ; 37 Scanlines of Vertical Blank... LDX #37 _Vertical_Blank STA WSYNC DEX BNE _Vertical_Blank LDA #0 STA VBLANK ; Enable TIA Output ;////////////// Start To Draw Playfield /////////////////////////////// LDX #4 ; Frase 1 empieza mas arriba _Tiempo STA WSYNC DEX BNE _Tiempo JMP ($82);Frase1 _Retorno LDA _Cero2 STA PF0 STA PF1 STA PF2 STA WSYNC STA WSYNC STA WSYNC STA WSYNC STA WSYNC STA WSYNC LDA #1 STA CTRLPF JMP ($84);Frase2 _Retorno2 JMP _CeroPers LDA TogPersonaje BEQ _CeroPers LDA RoomP1 CMP RoomP2 BEQ _HayPers JMP _CeroPers _HayPers LDA #0 STA TogPersonaje LDA Personaje2 STA Personaje LDA Personaje2 + 1 STA Personaje + 1 ;LDY Noparray2 ;LDA NopsArray,Y ;STA $A6 ;INY ;LDA NopsArray,Y ;STA $A7 ;LDA Vueltas2 ;STA Vueltas JMP _CeroPersS _CeroPers LDA #1 STA TogPersonaje LDA Personaje1 STA Personaje LDA Personaje1 + 1 STA Personaje + 1 ;LDY Noparray ;LDA NopsArray,Y ;STA $A6 ;INY ;LDA NopsArray,Y ;STA $A7 ;LDA Vueltas1 ;STA Vueltas _CeroPersS ;LDA Cero2 ;STA PF0 ;STA PF1 ;STA PF2 LDA #1 STA CTRLPF JMP ($88) _Retorno3 LDA #0 STA CTRLPF LDA _Cero2 STA PF0 STA PF1 STA PF2 LDA #0 STA GRP0 STA GRP1 LDA $BD BEQ _Retorno4 JMP _Musica _Retorno4 ;LDX #184 LDX #10; 90;50;30;50;90;112 _DibujaCola STA WSYNC DEX BNE _DibujaCola STA HMOVE LDA SWCHA AND #%00010000 BEQ _DecisionNear LDA SWCHA AND #%01000000 BEQ _Decision2Near LDA SWCHA AND #%00100000 BEQ _Decision3Near LDA SWCHA AND #%10000000 BEQ _Decision4Near ;BEQ TogImg LDA INPT4 BMI _RetDeci JMP _Boton;Decision _DecisionNear JMP _Decision _Decision2Near lda #1 sta CamFlag lda RoomP1 cmp #1;2 beq _CompaFF JMP _Decision2 _CompaFF lda ContaX cmp #$9C;FF beq _RetDeci jmp _Decision2 _Decision3Near JMP _Decision3 _Decision4Near lda #1 sta CamFlag lda RoomP1 cmp #$FF;$FE beq _Compa JMP _Decision4 _Compa lda ContaX cmp #$9D beq _RetDeci jmp _Decision4 ;TogImg ; LDA $90 ; CMP #1 ; BEQ Uno ; LDA #1 ; STA $90 ; JMP RetDeci ;Uno ; LDA #0 ; STA $90 _RetDeci lda TocaMedio and #128 beq _sigue lda RoomP1 cmp #1 beq _cami jmp _sigue _cami lda CamFlag beq _GameOver lda #0 sta CXCLR lda #$FF sta RoomP1 lda Backg sec ;mata al guardia (desaparece) sbc (<#_PisoIzq - <#_Arcos22) * 2 sta Backg lda Backg + 1 ;;clc ;;adc #0 ; suma el carry si hay ;sbc >#_PisoIzq - >#_Arcos22 ;sta Backg + 1 _sigue lda EstadoJuego cmp #16 beq _SalirDeTodo ;JMP HabiChgS3 lda Backg2 cmp #(<_Arcos22_2 + 10) beq _GameOver jmp _goes _GameOver jmp _Reset _goes LDA ContaX CMP #$9f ;#%01110101;$9F;14 BEQ _BordeIzq CMP #$FD BEQ _BordeDer JMP _HabiChgS6;3 _BordeIzq LDA #$FD STA ContaX INC RoomP1 lda RoomP1 cmp #1 beq _Estad _reto INC Puntaje lda Backg clc adc <#_PisoIzq - <#_Arcos22 sta Backg lda Backg + 1 ;clc ;adc #0 ; suma el carry si hay adc >#_PisoIzq - >#_Arcos22 sta Backg + 1 _SalirDeTodo JMP _HabiChgS6;3 _Estad lda #8 sta EstadoJuego jmp _reto _BordeDer LDA #$9f ;#%01110101 ;#$9F STA ContaX DEC RoomP1 INC Puntaje lda Backg sec sbc <#_PisoIzq - <#_Arcos22 sta Backg lda Backg + 1 ;clc ;sbc #0 ; resta el carry si hay sbc >#_PisoIzq - >#_Arcos22 sta Backg + 1 JMP _HabiChgS3 LDA ContaX CMP #14 BMI _HabiChgS ;LDA #0 ;STA ContaX LDA #28 STA Noparray ;INC RoomP1 JMP _HabiChgS6;3 _HabiChgS LDA ContaX CMP #0 BMI _HabiChgS2 JMP _HabiChgS3 _HabiChgS2 ;LDA #$9F;14 ;STA ContaX LDA #0 STA Noparray ;DEC RoomP1 _HabiChgS3 LDA ContaY CMP #16 BMI _HabiChgS4 LDA #0 STA ContaY ;LDA <#CeroP ;STA Personaje1 ;LDA >#CeroP ;STA Personaje1 + 1 LDA Personaje1 SBC #10 STA Personaje1 LDA <#_ColorP STA Vueltas1 LDA >#_ColorP STA Vueltas2 LDA Vueltas1 SBC #10 STA Vueltas1 LDA #0 STA TogCamina ;LDA #0 ;STA ContaY ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 INC Puntaje ;LDA Personaje1 ;SBC #7 ;STA Personaje1 JMP _HabiChgS6 _HabiChgS4 LDA ContaY CMP #0 BMI _HabiChgS5 JMP _HabiChgS6 _HabiChgS5 LDA #16 STA ContaY ;LDA <#CeroP ;STA Personaje1 ;LDA >#CeroP ;STA Personaje1 + 1 LDA Personaje1 ADC #10 STA Personaje1 LDA <#_ColorP STA Vueltas1 LDA >#_ColorP STA Vueltas2 LDA Vueltas1 ADC #11 STA Vueltas1 LDA #0 STA TogCamina ;LDA #7 ;STA ContaY ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 INC Puntaje ;LDA Personaje1 ;ADC #7 ;STA Personaje1 _HabiChgS6 ;LDA RoomP1 ;CMP #5 ;BEQ Iglesia ;CMP #10 ;BEQ Altar ;LDA <#Arcos22 ;STA Backg ;LDA >#Arcos22 ;STA Backg + 1 ;JMP IglesiaS ;Iglesia ;LDA <#Arcos23 ;STA Backg ;LDA >#Arcos23 ;STA Backg + 1 ;JMP IglesiaS ;Altar ;LDA <#Arcos21 ;STA Backg ;LDA >#Arcos21 ;STA Backg + 1 ;IglesiaS LDA Agarra AND #128 BEQ _NoSeAgarro jmp _SeAgarro _NoSeAgarro lda PuntAnim cmp #32 bmi _Sig jmp _Soltar _Sig LDA Toca;CXP0FB AND #128 BEQ _NoTocoPiso LDA #0 STA ColPir STA CXCLR sta AgFlag LDA <#_Palanca CMP Backg BEQ _MoverPalanca lda <#Llaves cmp Backg beq TomaLlave JMP _MapaS _MoverPalanca lda EstadoJuego cmp #32 beq TieneLlave jmp _MapaS TieneLlave lda #16 sta EstadoJuego LDA <#_Palanca2 STA Backg LDA >#_Palanca2 STA Backg + 1 LDA <#_Arcos_Escaler STA Backg2 LDA >#_Arcos_Escaler STA Backg2 + 1 JMP _MapaS TomaLlave lda #32 sta EstadoJuego jmp _MapaS _NoTocoPiso LDA #1 STA ColPir LDA #0 STA CXCLR JMP _MapaS LDA <#_MapaMundi STA $D0 LDA >#_MapaMundi STA $D1 LDY RoomP1 LDA ($D0),Y CMP #0 BEQ _MapaCero LDA <#_Arcos22 STA Backg LDA >#_Arcos22 STA Backg + 1 LDA <#_Arcos22_2 STA Backg2 LDA >#_Arcos22_2 STA Backg2 + 1 JMP _MapaS _SeAgarro LDA AgFlag CMP #7 BEQ _Sigue JMP _MapaS _Soltar lda #4 sta PuntAnim jmp _MapaS _Sigue LDA #0 STA CXCLR sta AgFlag lda #30 sta PuntAnim jmp _MapaS _MapaCero LDA <#_Arcos0 STA Backg LDA >#_Arcos0 STA Backg + 1 LDA <#_Arcos0 STA Backg2 LDA >#_Arcos0 STA Backg2 + 1 _MapaS ;////////////// End Of Display //////////////////////////////////////// LDA #%01000010 ; Disable VIA Output STA VBLANK ; 30 scanlines of overscan... ; LDX #30 ;Overscan STA WSYNC ; DEX ; BNE Overscan _OverscanLoop lda INTIM bne _OverscanLoop sta WSYNC ; LDA $90 ; CMP #1 ; BEQ MostraImg JMP _Start_Frame ;MostraImg ; JMP Start_Frame0 ; Build Next Frame ; Playfield generated by TIA Playfield Painter ; Mode Used = ASYMMETRICAL ; Playfields generated = PF0, PF1, PF2, PF3, PF4, PF5 ; Datas lines are reversed ; 192 Line(s) saved = 191 - 0 _Decision ;LDA #0 ;STA SWCHA ;LDA #8 ;STA REFP0 LDA CXP0FB AND #128 BEQ _EstaEnElAire ;Si esta en el aire no puede saltar JMP _Aire _EstaEnElAire LDA Agarra AND #128 BEQ _EnAire2 JMP _Aire _EnAire2 JMP _Decision5 _Aire LDA Inventario CMP #85 BEQ _VaIzq JMP _VaDer _VaIzq ;LDA #$20 ;STA HMP0 ;inc ContaX JMP _VaS _VaDer ;LDA #$E0 ;STA HMP0 ;dec ContaX _VaS LDA #14 STA PuntAnim ;;INC Noparray ;;INC Noparray ;;DEC ContaX ;LDY Noparray ;LDA NopsArray,Y ;STA $A6 ;INY ;LDA NopsArray,Y ;STA $A7 ;INC Personaje1 ;INC Vueltas1 ;INC ContaY JMP _Decision5 _Decision2 LDA #0 ;STA SWCHA ;LDA #8 STA REFP0 LDA #$20 STA HMP0 LDA #85 ;codigo inventado para saber para donde va STA Inventario ;;INC Noparray ;;INC Noparray INC ContaX;DEC ContaX ;LDY Noparray ;LDA NopsArray,Y ;STA $A6 ;INY ;LDA NopsArray,Y ;STA $A7 ;;DEC Personaje1 ;;DEC ContaY JMP _Decision5 _Decision3 ;LDA #0 ;STA SWCHA LDA #0 STA HMP0 LDA #8 STA REFP0 ;;DEC Noparray ;;DEC Noparray ;;INC ContaX ;LDY Noparray ;LDA NopsArray,Y ;STA $A6 ;INY ;LDA NopsArray,Y ;STA $A7 DEC Personaje1 DEC Vueltas1 ;DEC ContaY JMP _Decision5 _Decision4 ;LDA #0 ;STA SWCHA LDA #8;0 STA REFP0 LDA #$E0 STA HMP0 LDA #32 ;codigo inventado para saber para donde va STA Inventario ;;DEC Noparray ;;DEC Noparray DEC ContaX;INC ContaX ;LDY Noparray ;LDA NopsArray,Y ;STA $A6 ;INY ;LDA NopsArray,Y ;STA $A7 ;;INC Personaje1 ;;INC ContaY JMP _Decision5 _Decision5 ;LDA TogCamina ;BEQ CeroCam ;LDA #0 ;STA TogCamina ;LDA Personaje1 ;SEC;CLC ;SBC #28 ;STA Personaje1 ;JMP CeroCamS _CeroCam ;LDA #1 ;STA TogCamina ;LDA Personaje1 ;CLC;SEC ;ADC #28 ;STA Personaje1 _CeroCamS ; LDA ContaX ;Necesito cambiar el alto de los pixeles con "Vueltas" porque el personaje a la derecha consume muchos ciclos con los "Nops" ; CMP #8 ; BMI CeroCamS2 ; LDA #2 ; STA Vueltas1 ; JMP CeroCamS3 ;CeroCamS2 ; CMP #3 ; BMI AA ; JMP BB ;AA LDA #4 ; STA Vueltas1 ; JMP CeroCamS3 ;BB LDA #3 ; STA Vueltas1 ;CeroCamS3 JMP _RetDeci ; LDA PunteroRoom ; ADC #4 ; STA PunteroRoom ; LDY #8 ; LDA (PunteroRoom),Y ;La condicion, tener algo en el inventario ; AND Inventario ; BEQ Cuatro ; DEC $81 ; BEQ Cuatro ;Vuelta ; LDY #0 ; LDA (PunteroRoom),Y ; STA $82 ; INY ; LDA (PunteroRoom),Y ; STA $83 ; INY ; LDA (PunteroRoom),Y ; STA $84 ; INY ; LDA (PunteroRoom),Y ; STA $85 ; JMP RetDeci ;Cuatro ; LDA #2 ; STA $81 ; LDY #0 ; LDX #0 ; LDA PunteroRoomBKP,Y ; STA PunteroRoom,X ; INY ; INX ; LDA PunteroRoomBKP,Y ; STA PunteroRoom,X ; JMP Vuelta _Boton LDA RoomP1 CMP RoomP2 BEQ _Sabank JMP _Sasabank _Sabank LDA #100 STA ContAnim JMP _Sabnk;LDA $1FF8 _Sasabank ; LDA ControlBoton ; CMP #0 ; BEQ Boton2 ; INC ControlBoton ; CMP #7 ; BEQ ResetBoton ; JMP RetDeci ;Boton2 ; LDY #16 ; LDA <(PunteroRoom),Y ; ORA Inventario ; STA Inventario ; ;LDY #18 ;Carga la melodia ; ;LDA (PunteroRoom),Y ; ;STA $A3 ; ;INY ; ;LDA (PunteroRoom),Y ; ;STA $A4 ; ;LDA #10 ; ;STA AUDV0 ; ;LDA #10 ; ;STA $A1 ; ;LDA #0 ; ;STA DuracionNota ; LDY #10 ;Carga imagen ; LDA (PunteroRoom),Y ; STA $88 ; INY ; LDA (PunteroRoom),Y ; STA $89 ; LDY #24 ; LDX #0 ; LDA (PunteroRoom),Y ; STA Temp,X ; ;STA PunteroRoom,X ; ;STA PunteroRoomBKP,X ; INY ; INX ; LDA (PunteroRoom),Y ; STA Temp,X ; ;STA PunteroRoom,X ; ;STA PunteroRoomBKP,X ; LDX #0 ; LDY #0 ; LDA Temp,Y ; STA PunteroRoom,X ; STA PunteroRoomBKP,X ; INY ; INX ; LDA Temp,Y ; STA PunteroRoom,X ; STA PunteroRoomBKP,X ; INC ControlBoton ; JMP RetDeci;Vuelta;RetDeci ;ResetBoton ; LDA #0 ; STA ControlBoton JMP _RetDeci ; ALIGN 256 _MapaMundi .byte 0,0,0,0,0 _Cero2 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Cero2.2 .byte #%01000000 .byte #%10111111 .byte #%01000101 .byte #%00000000 _CeroLin1 lda EstadoJuego cmp #32 beq Llv _Linea1 _Cero2,_Cero2,_Cero2,_Cero2 Llv _Linea1 _Cero2,_Cero2.2,_Cero2,_Cero2 ;CeroLine ;Linea2 Cero2,Cero2,Cero2,Cero2 ;Linea2 D,A,Y,One _Habitacion1 ALIGN 256 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 ;----------------------------------- .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00111111 .byte #%01000010 .byte #%11111100 .byte #%00101000 .byte #%00111000 .byte #%00101000 .byte #%00111000 .byte #%00101000 _PalancaDer .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00100000 .byte #%00010110 .byte #%00100100 .byte #%01111100 .byte #%11111111 .byte #%00011010 .byte #%00000010 .byte #%00000010 _Arcos22Der .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 ;------------------------------------------- .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00111111 .byte #%01000010 .byte #%11111100 _Arcos21 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Palanca .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%01000000 .byte #%00100111 .byte #%00010000 .byte #%11111111 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Arcos22 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 ;--------------------------------------------------- .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Llaves .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%01000000 .byte #%10111111 ;------------------------------------------ .byte #%01000101 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 ;Palanca .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00011000 .byte #%00001000 .byte #%00010100 .byte #%00010100 .byte #%11101010 .byte #%00011010 .byte #%00011000 .byte #%11011011 .byte #%00010100 .byte #%11111111 .byte #%00000000 .byte #%00000000 .byte #%00000000 _PisoIzq .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%00000000 ALIGN 256 .byte #%00000000 .byte #%00000000 .byte #%00000000 ;------------------------------------------ .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 ;------------------------------------------ .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Arcos22_2 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%00000000 _Arcos23 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Palanca2 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000100 .byte #%11001011 .byte #%00010000 .byte #%11111111 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%00000000 ;--------------------- .byte #%00000000 .byte #%00000000 .byte #%00000000 ;----------------------- .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Arcos_Escaler .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000111 .byte #%00000110 .byte #%00000101 .byte #%00000101 .byte #%00000101 .byte #%00000101 .byte #%00000101 .byte #%00000101 .byte #%00000101 .byte #%00000101 .byte #%00000101 .byte #%00000101 .byte #%11100101 .byte #%00100101 .byte #%00100101 .byte #%00100101 .byte #%00100101 .byte #%00100101 .byte #%00100101 .byte #%00100101 .byte #%00100101 .byte #%11111101 .byte #%00000011 .byte #%11111111 _Arcos0 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 _Muelle .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Muelle2 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _MuelleC .byte #Azul .byte #Azul + 1 .byte #Azul + 2 .byte #Azul + 3 .byte #Azul + 4 .byte #Verde .byte #Azul + 5 .byte #Naranja .byte #Naranja + 1 .byte #Azul + 6 .byte #Azul + 7 .byte #Azul + 8 .byte #Azul + 9 .byte #Azul + 10 .byte #Azul .byte #Azul + 1 .byte #Azul + 2 .byte #Azul + 3 _MuelleC2 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #Gris .byte #Gris _ColorP .byte #Naranja; %00000000 .byte #Naranja; %00000000 .byte #Naranja; %00000000 .byte #Naranja; %00000000 .byte #Naranja; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 ;include "imagen4.txt" ;include "calle.btm" ;include "pirata.btm" _Linea LDX #4 ; 192 Scanlines to Display LDY #0 _Draw_Picture LDA #8 STA $80 _DoblePasada STA WSYNC LDA ($92),Y STA PF0 LDA _Cero2,Y STA PF1 LDA ($94),Y STA PF2 SLEEP 4 LDA ($96),Y STA PF0 LDA _Cero2,Y STA PF1 LDA ($98),Y STA PF2 DEC $80 BNE _DoblePasada INY DEX BNE _Draw_Picture RTS _Anim .word #_Anim1 .word #_Anim2 .word #_Anim3 .word #_Anim4 .word #_Anim5 .word #_Anim6 .word #_Anim7 .word #_Anim8 .word #_Anim9 .word #_Anim10 .word #_Anim11 .word #_Anim12 .word #_Anim13 .word #_Anim14 .word #_Anim15 .word #_swAnim8 .word #_swAnim9 .word #_swAnim10 .word #_swAnim11 .word #_swAnim12 .word #_swAnim13 .word #_swAnim14 .word #_swAnim15 .word #_swAnim16 .word #_swAnim17 .word #_swAnim18 .word #_swAnim15_ _Anim1 LDA #215 STA COLUP0 STA COLUP1 ;LDA #6 ;STA RoomP2 LDA #$40 STA HMP1 lda CamFlag beq _Parat lda EstadoJuego cmp #8 jmp _Espada LDA <#_Text1 STA Personaje1 LDA >#_Text1 STA Personaje1 + 1 jmp _Parats _Espada LDA <#_sText1 STA Personaje1 LDA >#_sText1 STA Personaje1 + 1 jmp _Parats _Parat lda <#_Parado sta Personaje1 lda >#_Parado sta Personaje1 + 1 _Parats DEC ContAnim BEQ _SumarAnim JMP _RetornoAnim _SumarAnim lda CamFlag beq _Parat2 lda EstadoJuego cmp #8 beq _Espada2 LDA <#_Text2 STA Personaje1 LDA >#_Text2 STA Personaje1 + 1 jmp _Parats2 _Espada2 LDA <#_sText2 STA Personaje1 LDA >#_sText2 STA Personaje1 + 1 jmp _Parats2 _Parat2 lda <#_Parado sta Personaje1 lda >#_Parado sta Personaje1 + 1 _Parats2 LDA #0 STA HMP1 INC PuntAnim INC PuntAnim LDA #5; 10 ;255;50 STA ContAnim JMP _RetornoAnim _Anim2 DEC ContAnim BEQ _SumarAnim2 JMP _RetornoAnim _SumarAnim2 lda CamFlag beq _Parat3 lda EstadoJuego cmp #8 beq _Espada3 LDA <#_Text3 STA Personaje1 LDA >#_Text3 STA Personaje1 + 1 jmp _Parats3 _Espada3 LDA <#_sText3 STA Personaje1 LDA >#_sText3 STA Personaje1 + 1 jmp _Parats3 _Parat3 lda <#_Parado2 sta Personaje1 lda >#_Parado2 sta Personaje1 + 1 _Parats3 LDA #5; 10 ;255;50 STA ContAnim STA WSYNC ;para evitar el gris por lineas impares STA WSYNC INC PuntAnim INC PuntAnim JMP _RetornoAnim _Anim3 ;LDA #0 ;STA COLUBK ;JMP Start_Frame0 DEC ContAnim BEQ _SumarAnim3 JMP _RetornoAnim _SumarAnim3 lda CamFlag beq _Parat4 lda EstadoJuego cmp #8 beq _Espada4 LDA <#_Text4 STA Personaje1 LDA >#_Text4 STA Personaje1 + 1 jmp _Parats4 _Espada4 LDA <#_sText4 STA Personaje1 LDA >#_sText4 STA Personaje1 + 1 jmp _Parats4 _Parat4 lda ColPir beq _Fling lda <#_Volar2 sta Personaje1 lda >#_Volar2 sta Personaje1 + 1 jmp _Parats4 _Fling lda <#_Parado2 sta Personaje1 lda >#_Parado2 sta Personaje1 + 1 _Parats4 LDA #5; 10 ;255;50 STA ContAnim STA WSYNC STA WSYNC CLC LDA Backg ADC ColPir STA Backg clc LDA Backg2 ADC ColPir STA Backg2 clc LDA Backg3 ADC ColPir STA Backg3 INC PuntAnim INC PuntAnim JMP _RetornoAnim _Anim4 DEC ContAnim BEQ _SumarAnim4 JMP _RetornoAnim _SumarAnim4 lda CamFlag beq _Parat5 lda EstadoJuego cmp #8 beq _Espada5 LDA <#_Text5 STA Personaje1 LDA >#_Text5 STA Personaje1 + 1 jmp _Parats5 _Espada5 LDA <#_sText5 STA Personaje1 LDA >#_sText5 STA Personaje1 + 1 jmp _Parats5 _Parat5 lda ColPir beq _Fling2 lda <#_Volar sta Personaje1 lda >#_Volar sta Personaje1 + 1 jmp _Parats5 _Fling2 lda <#_Parado sta Personaje1 lda >#_Parado sta Personaje1 + 1 _Parats5 LDA #5; 10 STA ContAnim STA WSYNC STA WSYNC CLC LDA Backg ADC ColPir STA Backg clc LDA Backg2 ADC ColPir STA Backg2 clc LDA Backg3 ADC ColPir STA Backg3 INC PuntAnim INC PuntAnim JMP _RetornoAnim _Anim5 DEC ContAnim BEQ _SumarAnim5 JMP _RetornoAnim _SumarAnim5 lda CamFlag beq _Parat6 lda EstadoJuego cmp #8 beq _Espada6 LDA <#_Text6 STA Personaje1 LDA >#_Text6 STA Personaje1 + 1 jmp _Parats6 _Espada6 LDA <#_sText6 STA Personaje1 LDA >#_sText6 STA Personaje1 + 1 jmp _Parats6 _Parat6 lda ColPir beq _Fling3 lda <#_Volar sta Personaje1 lda >#_Volar sta Personaje1 + 1 jmp _Parats6 _Fling3 lda <#_Parado sta Personaje1 lda >#_Parado sta Personaje1 + 1 _Parats6 LDA #5; 10 STA ContAnim STA WSYNC STA WSYNC CLC LDA Backg ADC ColPir STA Backg clc LDA Backg2 ADC ColPir STA Backg2 clc LDA Backg3 ADC ColPir STA Backg3 INC PuntAnim INC PuntAnim JMP _RetornoAnim _Anim6 DEC ContAnim BEQ _SumarAnim6 JMP _RetornoAnim _SumarAnim6 lda CamFlag beq _Parat7 lda EstadoJuego cmp #8 beq _Espada7 LDA <#_Text7 STA Personaje1 LDA >#_Text7 STA Personaje1 + 1 jmp _Parats7 _Espada7 LDA <#_sText7 STA Personaje1 LDA >#_sText7 STA Personaje1 + 1 jmp _Parats7 _Parat7 lda ColPir beq _Fling4 lda <#_Volar2 sta Personaje1 lda >#_Volar2 sta Personaje1 + 1 jmp _Parats7 _Fling4 lda <#_Parado2 sta Personaje1 lda >#_Parado2 sta Personaje1 + 1 _Parats7 LDA #5; 10 STA ContAnim STA WSYNC STA WSYNC CLC LDA Backg ADC ColPir STA Backg clc LDA Backg2 ADC ColPir STA Backg2 clc LDA Backg3 ADC ColPir STA Backg3 INC PuntAnim INC PuntAnim JMP _RetornoAnim _Anim7 DEC ContAnim BEQ _SumarAnim7 JMP _RetornoAnim _SumarAnim7 LDA #4 STA PuntAnim LDA #1 STA ContAnim STA WSYNC STA WSYNC CLC LDA Backg ADC ColPir STA Backg clc LDA Backg2 ADC ColPir STA Backg2 clc LDA Backg3 ADC ColPir STA Backg3 JMP _RetornoAnim _Anim8 LDA <#_Tex1 STA Personaje1 LDA >#_Tex1 STA Personaje1 + 1 STA WSYNC STA WSYNC DEC Backg DEC Backg2 dec Backg3 DEC ContAnim BEQ _SumarAnim8 JMP _RetornoAnim _SumarAnim8 LDA <#_Tex2 STA Personaje1 LDA >#_Tex2 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC DEC Backg DEC Backg2 dec Backg3 INC PuntAnim INC PuntAnim JMP _RetornoAnim _Anim9 DEC ContAnim BEQ _SumarAnim9 JMP _RetornoAnim _SumarAnim9 LDA <#_Tex3 STA Personaje1 LDA >#_Tex3 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC DEC Backg DEC Backg2 dec Backg3 INC PuntAnim INC PuntAnim JMP _RetornoAnim _Anim10 DEC ContAnim BEQ _SumarAnim10 JMP _RetornoAnim _SumarAnim10 LDA <#_Tex4 STA Personaje1 LDA >#_Tex4 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC DEC Backg DEC Backg2 dec Backg3 INC PuntAnim INC PuntAnim JMP _RetornoAnim _Anim11 DEC ContAnim BEQ _SumarAnim11 JMP _RetornoAnim _SumarAnim11 LDA <#_Tex5 STA Personaje1 LDA >#_Tex5 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC DEC Backg DEC Backg2 dec Backg3 INC PuntAnim INC PuntAnim JMP _RetornoAnim _Anim12 DEC ContAnim BEQ _SumarAnim12 JMP _RetornoAnim _SumarAnim12 LDA <#_Tex6 STA Personaje1 LDA >#_Tex6 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC DEC Backg DEC Backg2 dec Backg3 INC PuntAnim INC PuntAnim JMP _RetornoAnim _Anim13 DEC ContAnim BEQ _SumarAnim13 JMP _RetornoAnim _SumarAnim13 LDA <#_Tex7 STA Personaje1 LDA >#_Tex7 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC DEC Backg DEC Backg2 dec Backg3 INC PuntAnim INC PuntAnim JMP _RetornoAnim _Anim14 DEC ContAnim BEQ _SumarAnim14 JMP _RetornoAnim _SumarAnim14 LDA <#_Tex8 STA Personaje1 LDA >#_Tex8 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC DEC Backg DEC Backg2 dec Backg3 INC PuntAnim INC PuntAnim JMP _RetornoAnim _Anim15 DEC ContAnim BEQ _SumarAnim15 JMP _RetornoAnim _SumarAnim15 LDA #4 STA PuntAnim LDA #1 STA ContAnim STA WSYNC STA WSYNC DEC Backg DEC Backg2 dec Backg3 JMP _RetornoAnim _Isla ;DibujaHabitacion4 ;Carpa LDX #18 ;10 ; 192 Scanlines to Display LDY #0 LDA $BE BEQ _Isla2 LDA #0 STA $90 LDA #Naranja STA $A0 JMP _Draw_PictureW2 _Isla2 LDA #0;Verde;#Celeste ;SBC #13 ;LDA #219 STA $90 LDA #Naranja;Celeste;#Verde ;SBC #11 ;LDA #215 ;LDA #0 STA $A0 _Draw_PictureW2 LDA #2; 4;Vueltas;#4 STA $80 ;LDA $90 ;ADC #1 ;STA $90 ;;INC $90 ;;INC $A0 _DoblePasadaW2 ;STX COLUPF LDA $A0 STA COLUPF LDA $90 STA COLUBK STA WSYNC lda (Backg3),y ;LDA #0;Arcos12,Y STA PF0 LDA (Backg),Y ;Arcos22,Y STA PF1 LDA (Backg2),Y;#0;Arcos22,Y ;lda RoomP1;LDA ContaX ;para ver su valor en binario STA PF2 ;JMP ($A6) ;Nops _NoOper ; LDA TogPersonaje ; BEQ CePers ; JMP HaPers _CePers ; LDA (Vueltas1),Y ; STA COLUP1 ; LDA (Personaje),Y ; STA GRP1 ; JMP SaPers _HaPers LDA (Vueltas1),Y STA COLUP0 LDA (Personaje),Y STA GRP0 cpy #11 bmi _SaPers LDA CXP0FB sta Toca jmp _SaSP _SaPers cpy #5 bmi _SaPe lda CXP0FB sta TocaMedio LDA #0 STA CXCLR jmp _SaSP _SaPe LDA CXP0FB sta Agarra lda AgFlag beq _Pone7 jmp _SaSP _Pone7 lda #7 sta AgFlag _SaSP ;STA RESP0 DEC $80 BNE _DoblePasadaW2 INY DEX BNE _Draw_PictureW2 JMP _Retorno3 _IslaBack LDX #18 ;10 ; 192 Scanlines to Display LDY #0 sec lda Backg3 sbc #18 sta Bck3 lda Backg3 + 1 sbc #0 sta Bck3 + 1 sec lda Backg2 sbc #18 sta Bck2 lda Backg2 + 1 sbc #0 sta Bck2 + 1 sec lda Backg sbc #18 sta Bck lda Backg + 1 sbc #0 sta Bck + 1 _Draw_PictureW22 lda #2 sta $80 _DoblePasada__ LDA #4;Vueltas;#4 STA $80 LDA #0;MuelleC,Y STA COLUBK LDA #Naranja;MuelleC2,Y STA COLUPF STA WSYNC LDA (Bck3),Y ;#0;Arcos12,Y STA PF0 LDA (Bck),Y ;Muelle,Y ;Arcos22,Y STA PF1 LDA (Bck2),Y ;RoomP1 ;para ver su valor en binario ;Muelle2,Y;#0;Arcos22,Y STA PF2 ;dec $80 ;bne DoblePasada__ INY DEX BNE _Draw_PictureW22 JMP _Retorno2 ; LDX #8 ; 192 Scanlines to Display ; LDA #Verde ; SBC #10 ; STA $A0 ;Draw_PictureW_Verde ; LDA #4 ; STA $80 ; LDA $90 ; ADC #1 ; STA $90 ; ;INC $90 ; INC $A0 ;DoblePasadaW_Verde ; ;STX COLUPF ; LDA $A0 ; STA COLUPF ; LDA $90 ; STA COLUBK ; STA WSYNC ; LDA Arcos12,Y ; NOP ;Si este nop lo pongo dos lineas mas arriba no funciona el juego paso de habitacion y se queda esperando, el puntanim de 6 vuelve a 2 y el roomp2 se pone en cero ??????? ; STA PF0 ; LDA Arcos22,Y ; STA PF1 ; LDA Arcos32,Y ; STA PF2 ; DEC $80 ; BNE DoblePasadaW_Verde ; INY ; DEX ; BNE Draw_PictureW_Verde ; ; JMP Retorno3 _Musica LDA DuracionNota BEQ _ResetNota DEC DuracionNota JMP _RetornarA4 _ResetNota LDA #20 STA DuracionNota LDA $A1 ;CMP #0 BEQ _RetornarA4 LDY $A1 LDA ($A3),Y BEQ _Volumen STA AUDF0 DEC $A1 DEC DuracionNota _RetornarA4 JMP _Retorno4 _Volumen ;LDA #0 ;STA AUDV0 LDA #34;150 STA $A1 LDY $A1 LDA ($A3),Y STA AUDF0 DEC $A1 JMP _Retorno4 _Melodia .byte #0 .byte #0 .byte E_2 .byte D_2 .byte E_2 .byte F_2 .byte D_2 .byte C_2 .byte D_2;B_2 .byte C_2 .byte E_2 .byte D_2 .byte E_2 .byte F_2 .byte G_2 .byte A_2 .byte G_2 .byte F_2 .byte E_2 .byte D_2 .byte C_2 .byte E_2 .byte G_2 .byte C_3 .byte B_2 .byte C_3 .byte G_2 .byte G_2 .byte A_2 .byte F_2 .byte F_2 .byte G_2 .byte E_2 .byte D_2 .byte C_2 _Text1 .byte #%00000000 .byte #%00110000 .byte #%00110000 .byte #%00110000 .byte #%00001000 .byte #%00001000 .byte #%00001000 .byte #%00010100 .byte #%00001100 .byte #%00010100 .byte #%00010100 .byte #%00000010 .byte #%00001001 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Text2 .byte #%00000000 .byte #%01100000 .byte #%01100000 .byte #%01100000 .byte #%00110000 .byte #%00001000 .byte #%01110000 .byte #%00001000 .byte #%00111000 .byte #%01101100 .byte #%01100110 .byte #%00100011 .byte #%00100001 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Text3 .byte #%00000000 .byte #%01100000 .byte #%01100000 .byte #%01100000 .byte #%00110000 .byte #%00010000 .byte #%00010000 .byte #%00100000 .byte #%00111000 .byte #%00101000 .byte #%00101111 .byte #%00100001 .byte #%00100000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Text4 .byte #%00000000 .byte #%01000000 .byte #%01100000 .byte #%01100000 .byte #%00100000 .byte #%00100000 .byte #%11010000 .byte #%00110000 .byte #%00110000 .byte #%01110000 .byte #%00111000 .byte #%00010100 .byte #%00001000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Text5 .byte #%00000000 .byte #%01000000 .byte #%01100000 .byte #%01100000 .byte #%00100000 .byte #%00010000 .byte #%11101000 .byte #%00101000 .byte #%00010000 .byte #%00110000 .byte #%01101000 .byte #%01100100 .byte #%00100010 .byte #%00100010 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Text6 .byte #%00000000 .byte #%01100000 .byte #%01100000 .byte #%01100000 .byte #%00010000 .byte #%01001000 .byte #%01010000 .byte #%00001000 .byte #%00011000 .byte #%00101000 .byte #%00101111 .byte #%00010001 .byte #%00010000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Text7 .byte #%00000000 .byte #%00000000 .byte #%01100000 .byte #%01100000 .byte #%00100000 .byte #%00010000 .byte #%01110000 .byte #%01010000 .byte #%00010000 .byte #%00110000 .byte #%00111110 .byte #%00010010 .byte #%00011000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Tex1 .byte #%00000000 .byte #%00000000 .byte #%00110000 .byte #%00110000 .byte #%00001100 .byte #%00011111 .byte #%00011101 .byte #%01100100 .byte #%00011000 .byte #%00011110 .byte #%00001010 .byte #%00000100 .byte #%00000110 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Tex2 .byte #%00000000 .byte #%00000000 .byte #%00110000 .byte #%00110110 .byte #%10001001 .byte #%01111000 .byte #%00011000 .byte #%00111100 .byte #%01111100 .byte #%01101100 .byte #%00100100 .byte #%00100111 .byte #%00000001 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Tex3 .byte #%00110000 .byte #%00110000 .byte #%10000000 .byte #%01110000 .byte #%00011000 .byte #%00011100 .byte #%01110000 .byte #%01001100 .byte #%00101100 .byte #%01100100 .byte #%00000010 .byte #%00000011 .byte #%00000001 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Tex4 .byte #%00000000 .byte #%00000000 .byte #%10100000 .byte #%01110000 .byte #%00110000 .byte #%00011000 .byte #%00011000 .byte #%00111000 .byte #%01011000 .byte #%10001100 .byte #%10000110 .byte #%00000011 .byte #%00000001 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Tex5 .byte #%00000000 .byte #%01111000 .byte #%01111000 .byte #%00101100 .byte #%00001100 .byte #%01111100 .byte #%10001100 .byte #%00000010 .byte #%00000001 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Tex6 .byte #%00000000 .byte #%01111000 .byte #%01101100 .byte #%00001010 .byte #%00011001 .byte #%01111000 .byte #%10011111 .byte #%00001100 .byte #%00000100 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Tex7 .byte #%00000000 .byte #%01111000 .byte #%01101110 .byte #%00001011 .byte #%00001000 .byte #%00011000 .byte #%01110110 .byte #%01111010 .byte #%01011000 .byte #%10000000 .byte #%10000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Tex8 .byte #%00000000 .byte #%00000000 .byte #%01100000 .byte #%01110000 .byte #%00001100 .byte #%00001010 .byte #%00001101 .byte #%00111000 .byte #%00110000 .byte #%00010000 .byte #%00001000 .byte #%00011000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Swin .byte #%01000000 .byte #%00100000 .byte #%01100000 .byte #%01110000 .byte #%00001100 .byte #%00001010 .byte #%00001101 .byte #%00011000 .byte #%00010000 .byte #%00010000 .byte #%00001000 .byte #%00011000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Swin2 .byte #%01000000 .byte #%00100000 .byte #%01100000 .byte #%01110000 .byte #%00011000 .byte #%00011000 .byte #%00011000 .byte #%00011000 .byte #%00010000 .byte #%00010000 .byte #%00010000 .byte #%00010000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Swin3 .byte #%01000000 .byte #%00100000 .byte #%01100000 .byte #%01110000 .byte #%00110000 .byte #%00110000 .byte #%00110000 .byte #%00110000 .byte #%00100000 .byte #%01000000 .byte #%10000000 .byte #%10000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Swin4 .byte #%01000000 .byte #%01000000 .byte #%01100000 .byte #%01100000 .byte #%01100000 .byte #%01100000 .byte #%01100000 .byte #%01100000 .byte #%01100000 .byte #%10000000 .byte #%10000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Swin5 .byte #%01000000 .byte #%00100000 .byte #%01100000 .byte #%01110000 .byte #%00001100 .byte #%00001010 .byte #%00001101 .byte #%00001000 .byte #%00001000 .byte #%00001000 .byte #%00000100 .byte #%00000100 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Swin6 .byte #%01000000 .byte #%00100000 .byte #%00010000 .byte #%00111000 .byte #%00001100 .byte #%00000110 .byte #%00000101 .byte #%00000100 .byte #%00000100 .byte #%00000100 .byte #%00000010 .byte #%00000001 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Swin7 .byte #%01000000 .byte #%00100000 .byte #%00010000 .byte #%00011000 .byte #%00001100 .byte #%00000110 .byte #%00000111 .byte #%00000010 .byte #%00000010 .byte #%00000010 .byte #%00000001 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Parado .byte #%00000000 .byte #%01100000 .byte #%01110000 .byte #%00100000 .byte #%00011000 .byte #%00011100 .byte #%00111010 .byte #%10001001 .byte #%00010100 .byte #%00100100 .byte #%01000010 .byte #%00100010 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Parado2 .byte #%00000000 .byte #%01100000 .byte #%01110000 .byte #%00100000 .byte #%00111100 .byte #%00111010 .byte #%01011010 .byte #%10001001 .byte #%00010100 .byte #%00100100 .byte #%01000010 .byte #%00100010 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Volar .byte #%00000000 .byte #%00000000 .byte #%01100000 .byte #%01110000 .byte #%00001100 .byte #%00001010 .byte #%00001101 .byte #%00111000 .byte #%00110000 .byte #%00010000 .byte #%00001000 .byte #%00011000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _Volar2 .byte #%00000000 .byte #%00000000 .byte #%01100000 .byte #%01110000 .byte #%00001110 .byte #%00001001 .byte #%00001100 .byte #%00111000 .byte #%00110000 .byte #%00011000 .byte #%00000100 .byte #%00001100 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _swAnim8 LDA <#_Swin STA Personaje1 LDA >#_Swin STA Personaje1 + 1 STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 DEC ContAnim BEQ _swSumarAnim8 JMP _RetornoAnim _swSumarAnim8 LDA <#_Swin2 STA Personaje1 LDA >#_Swin2 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP _RetornoAnim _swAnim9 DEC ContAnim BEQ _swSumarAnim9 JMP _RetornoAnim _swSumarAnim9 LDA <#_Swin3 STA Personaje1 LDA >#_Swin3 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP _RetornoAnim _swAnim10 DEC ContAnim BEQ _swSumarAnim10 JMP _RetornoAnim _swSumarAnim10 LDA <#_Swin4 STA Personaje1 LDA >#_Swin4 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP _RetornoAnim _swAnim11 DEC ContAnim BEQ _swSumarAnim11 JMP _RetornoAnim _swSumarAnim11 LDA <#_Swin3 STA Personaje1 LDA >#_Swin3 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP _RetornoAnim _swAnim12 DEC ContAnim BEQ _swSumarAnim12 JMP _RetornoAnim _swSumarAnim12 LDA <#_Swin2 STA Personaje1 LDA >#_Swin2 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP _RetornoAnim _swAnim13 DEC ContAnim BEQ _swSumarAnim13 JMP _RetornoAnim _swSumarAnim13 LDA <#_Swin STA Personaje1 LDA >#_Swin STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP _RetornoAnim _swAnim14 DEC ContAnim BEQ _swSumarAnim14 JMP _RetornoAnim _swSumarAnim14 LDA <#_Swin5 STA Personaje1 LDA >#_Swin5 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP _RetornoAnim _swAnim15 DEC ContAnim BEQ _swSumarAnim15 JMP _RetornoAnim _swSumarAnim15 LDA <#_Swin6 STA Personaje1 LDA >#_Swin6 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP _RetornoAnim _swAnim16 DEC ContAnim BEQ _swSumarAnim16 JMP _RetornoAnim _swSumarAnim16 LDA <#_Swin7 STA Personaje1 LDA >#_Swin7 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP _RetornoAnim _swAnim17 DEC ContAnim BEQ _swSumarAnim17 JMP _RetornoAnim _swSumarAnim17 LDA <#_Swin6 STA Personaje1 LDA >#_Swin6 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP _RetornoAnim _swAnim18 DEC ContAnim BEQ _swSumarAnim18 JMP _RetornoAnim _swSumarAnim18 LDA <#_Swin5 STA Personaje1 LDA >#_Swin5 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP _RetornoAnim _swAnim15_ DEC ContAnim BEQ _swSumarAnim15_ JMP _RetornoAnim _swSumarAnim15_ LDA #30 STA PuntAnim LDA #1 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 JMP _RetornoAnim ;sText6 _sText7 _sText6 _sText5 _sText4 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00001100 .byte #%00001100 .byte #%00000110 .byte #%00001010 .byte #%00001001 .byte #%11110101 .byte #%00011100 .byte #%00100100 .byte #%00010011 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 _sText1 _sText2 _sText3 ;////////////// Set Vectors /////////////////////////////////////////// ORG $DFFA RORG $FFFA ; Interrupt Vectors .word _Reset ; NMI .word _Reset ; RESET .word _Reset ; IRQ ;END ;///////////////// Start of Code ///////////////////////////////////// SEG ORG $E000 RORG $F000 JMP Sajmp Sabnk LDA $1FF8 NOP NOP NOP NOP JMP Start_Frame Sajmp Reset ; Clear RAM, TIA registers and Set Stack Pointer to #$FF SEI CLD LDX #$FF TXS LDA #0 Clear_Mem STA 0,X DEX BNE Clear_Mem LDA #$00 STA COLUBK ; Set Background to Black ;LDA #15*8 ;STA COLUPF ;LDA #0 LDA #TieneObjeto STA Inventario LDA #2 STA $81 LDA <#Habitacion1 STA PunteroRoom STA PunteroRoomBKP LDA >#Habitacion1 STA PunteroRoom + 1 STA PunteroRoomBKP + 1 ;LDA PunteroRoom ;ADC #4 ;STA PunteroRoom ;LDA <#WELCOME ;;LDY #0 ;;LDA (PunteroRoom),Y ;STA $82 ;LDA >#WELCOME ;;INY ;;LDA (PunteroRoom),Y ;STA $83 ;LDA <#SOMETHING ;;INY ;;LDA (PunteroRoom),Y ;STA $84 ;LDA >#SOMETHING ;;INY ;;LDA (PunteroRoom),Y ;STA $85 LDA <#CeroLin1;LineaMarqueeEx STA $82 LDA >#CeroLin1;LineaMarqueeEx STA $83 LDA <#IslaBack;CeroLine STA $84 LDA >#IslaBack;CeroLine STA $85 ;LineaMarquee W1,E2,L3,C4,O1,M1,E2,Cero, Cero, Cero LDA <#Isla;DibujaHabitacion3;Calle1 STA $88 LDA >#Isla;DibujaHabitacion3;Calle1 STA $89 ;LDA <#Pirata2;Calle2 ;STA $8A ;LDA >#Pirata2;Calle2 ;STA $8B LDA #1 STA AUDC0 LDA #0;10 STA AUDV0 LDA #34;150;146;10 STA $A1 LDA <#Melodia STA $A3 LDA >#Melodia STA $A4 LDA #80 STA $A5 ;LDA <#Nops7 ;STA $A6 ;LDA >#Nops7 ;STA $A7 ;LDA <#CeroP ;STA Personaje1 ;LDA >#CeroP ;STA Personaje1 + 1 ;LDA #2 ;STA Vueltas ;STA Vueltas1 ;LDA #3 ;STA Vueltas2 LDA #0 STA Vueltas STA Vueltas1 STA Vueltas2 LDA #0;13;14 STA ContaX ;LDA <#CeroP ;STA Personaje2 ;LDA >#CeroP ;STA Personaje2 + 1 LDA Personaje2 ADC #5 STA Personaje2 LDA #10;255;50 STA ContAnim LDA #18 STA Noparray2 LDA <#Arcos22 STA Backg LDA >#Arcos22 STA Backg + 1 LDA <#Arcos22_2 STA Backg2 sta Backg3 LDA >#Arcos22_2 STA Backg2 + 1 sta Backg3 + 1 LDA #0 STA HMP0 LDA <#ColorP STA Vueltas1 LDA >#ColorP STA Vueltas2 ;/////////////////// Picture Starts Here ///////////////////////////// Start_Frame lda #22 sta T1024T LDA Vueltas BEQ VCero LDA #0 STA Vueltas STA HMP0 JMP VSal VCero LDA #1 STA Vueltas VSal LDY PuntAnim LDA Anim,Y STA SaltAnim INY LDA Anim,Y STA SaltAnim + 1 JMP (SaltAnim) RetornoAnim lda #0 sta CamFlag ;JMP Marquesina RetornoMarq LDA #8 STA COLUPF ; Start VSYNC LDA #2 STA VSYNC STA WSYNC STA WSYNC STA WSYNC ; 3 Scanlines of VSYNC LDA #0 STA VSYNC ; End VSYNC ; 37 Scanlines of Vertical Blank... LDX #37 Vertical_Blank STA WSYNC DEX BNE Vertical_Blank LDA #0 STA VBLANK ; Enable TIA Output ;////////////// Start To Draw Playfield /////////////////////////////// LDX #4 ; Frase 1 empieza mas arriba Tiempo STA WSYNC DEX BNE Tiempo JMP ($82);Frase1 Retorno LDA Cero2 STA PF0 STA PF1 STA PF2 STA WSYNC STA WSYNC STA WSYNC STA WSYNC STA WSYNC STA WSYNC LDA #1 STA CTRLPF JMP ($84);Frase2 Retorno2 JMP CeroPers LDA TogPersonaje BEQ CeroPers LDA RoomP1 CMP RoomP2 BEQ HayPers JMP CeroPers HayPers LDA #0 STA TogPersonaje LDA Personaje2 STA Personaje LDA Personaje2 + 1 STA Personaje + 1 ;LDY Noparray2 ;LDA NopsArray,Y ;STA $A6 ;INY ;LDA NopsArray,Y ;STA $A7 ;LDA Vueltas2 ;STA Vueltas JMP CeroPersS CeroPers LDA #1 STA TogPersonaje LDA Personaje1 STA Personaje LDA Personaje1 + 1 STA Personaje + 1 ;LDY Noparray ;LDA NopsArray,Y ;STA $A6 ;INY ;LDA NopsArray,Y ;STA $A7 ;LDA Vueltas1 ;STA Vueltas CeroPersS ;LDA Cero2 ;STA PF0 ;STA PF1 ;STA PF2 LDA #1 STA CTRLPF JMP ($88) Retorno3 LDA #0 STA CTRLPF LDA Cero2 STA PF0 STA PF1 STA PF2 LDA #0 STA GRP0 STA GRP1 LDA $BD BEQ Retorno4 JMP Musica Retorno4 ;LDX #184 LDX #10; 90;50;30;50;90;112 DibujaCola STA WSYNC DEX BNE DibujaCola STA HMOVE LDA SWCHA AND #%00010000 BEQ DecisionNear LDA SWCHA AND #%01000000 BEQ Decision2Near LDA SWCHA AND #%00100000 BEQ Decision3Near LDA SWCHA AND #%10000000 BEQ Decision4Near ;BEQ TogImg LDA INPT4 BMI RetDeci JMP Boton;Decision DecisionNear JMP Decision Decision2Near lda #1 sta CamFlag lda RoomP1 cmp #1;2 beq CompaFF JMP Decision2 CompaFF lda ContaX cmp #$9C;FF beq RetDeci jmp Decision2 Decision3Near JMP Decision3 Decision4Near lda #1 sta CamFlag lda RoomP1 cmp #$FE beq Compa JMP Decision4 Compa lda ContaX cmp #$9D beq RetDeci jmp Decision4 ;TogImg ; LDA $90 ; CMP #1 ; BEQ Uno ; LDA #1 ; STA $90 ; JMP RetDeci ;Uno ; LDA #0 ; STA $90 RetDeci lda EstadoJuego cmp #16 beq SalirDeTodo ;JMP HabiChgS3 lda Backg2 cmp #(#PisoIzq - >#Arcos22 sta Backg + 1 SalirDeTodo JMP HabiChgS6;3 BordeDer LDA #$9f ;#%01110101 ;#$9F STA ContaX DEC RoomP1 INC Puntaje lda Backg sec sbc <#PisoIzq - <#Arcos22 sta Backg lda Backg + 1 ;clc ;sbc #0 ; resta el carry si hay sbc >#PisoIzq - >#Arcos22 sta Backg + 1 JMP HabiChgS3 LDA ContaX CMP #14 BMI HabiChgS ;LDA #0 ;STA ContaX LDA #28 STA Noparray ;INC RoomP1 JMP HabiChgS6;3 HabiChgS LDA ContaX CMP #0 BMI HabiChgS2 JMP HabiChgS3 HabiChgS2 ;LDA #$9F;14 ;STA ContaX LDA #0 STA Noparray ;DEC RoomP1 HabiChgS3 LDA ContaY CMP #16 BMI HabiChgS4 LDA #0 STA ContaY ;LDA <#CeroP ;STA Personaje1 ;LDA >#CeroP ;STA Personaje1 + 1 LDA Personaje1 SBC #10 STA Personaje1 LDA <#ColorP STA Vueltas1 LDA >#ColorP STA Vueltas2 LDA Vueltas1 SBC #10 STA Vueltas1 LDA #0 STA TogCamina ;LDA #0 ;STA ContaY ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 ;INC RoomP1 INC Puntaje ;LDA Personaje1 ;SBC #7 ;STA Personaje1 JMP HabiChgS6 HabiChgS4 LDA ContaY CMP #0 BMI HabiChgS5 JMP HabiChgS6 HabiChgS5 LDA #16 STA ContaY ;LDA <#CeroP ;STA Personaje1 ;LDA >#CeroP ;STA Personaje1 + 1 LDA Personaje1 ADC #10 STA Personaje1 LDA <#ColorP STA Vueltas1 LDA >#ColorP STA Vueltas2 LDA Vueltas1 ADC #11 STA Vueltas1 LDA #0 STA TogCamina ;LDA #7 ;STA ContaY ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 ;DEC RoomP1 INC Puntaje ;LDA Personaje1 ;ADC #7 ;STA Personaje1 HabiChgS6 ;LDA RoomP1 ;CMP #5 ;BEQ Iglesia ;CMP #10 ;BEQ Altar ;LDA <#Arcos22 ;STA Backg ;LDA >#Arcos22 ;STA Backg + 1 ;JMP IglesiaS ;Iglesia ;LDA <#Arcos23 ;STA Backg ;LDA >#Arcos23 ;STA Backg + 1 ;JMP IglesiaS ;Altar ;LDA <#Arcos21 ;STA Backg ;LDA >#Arcos21 ;STA Backg + 1 ;IglesiaS LDA Agarra AND #128 BEQ NoSeAgarro jmp SeAgarro NoSeAgarro lda PuntAnim cmp #32 bmi Sig jmp Soltar Sig LDA Toca;CXP0FB AND #128 BEQ NoTocoPiso LDA #0 STA ColPir STA CXCLR sta AgFlag LDA <#Palanca CMP Backg BEQ MoverPalanca lda <#Oil cmp Backg beq TakeOil JMP MapaS MoverPalanca lda EstadoJuego cmp #32 beq TieneOil jmp MapaS TieneOil lda #16 sta EstadoJuego LDA <#Palanca2 STA Backg LDA >#Palanca2 STA Backg + 1 LDA <#Arcos_Escaler STA Backg2 LDA >#Arcos_Escaler STA Backg2 + 1 JMP MapaS TakeOil lda #32 sta EstadoJuego jmp MapaS NoTocoPiso LDA #1 STA ColPir LDA #0 STA CXCLR JMP MapaS LDA <#MapaMundi STA $D0 LDA >#MapaMundi STA $D1 LDY RoomP1 LDA ($D0),Y CMP #0 BEQ MapaCero LDA <#Arcos22 STA Backg LDA >#Arcos22 STA Backg + 1 LDA <#Arcos22_2 STA Backg2 LDA >#Arcos22_2 STA Backg2 + 1 JMP MapaS SeAgarro LDA AgFlag CMP #7 BEQ Sigue JMP MapaS Soltar lda #4 sta PuntAnim jmp MapaS Sigue LDA #0 STA CXCLR sta AgFlag lda #30 sta PuntAnim jmp MapaS MapaCero LDA <#Arcos0 STA Backg LDA >#Arcos0 STA Backg + 1 LDA <#Arcos0 STA Backg2 LDA >#Arcos0 STA Backg2 + 1 MapaS ;////////////// End Of Display //////////////////////////////////////// LDA #%01000010 ; Disable VIA Output STA VBLANK ; 30 scanlines of overscan... ; LDX #30 ;Overscan STA WSYNC ; DEX ; BNE Overscan OverscanLoop lda INTIM bne OverscanLoop sta WSYNC ; LDA $90 ; CMP #1 ; BEQ MostraImg JMP Start_Frame ;MostraImg ; JMP Start_Frame0 ; Build Next Frame ; Playfield generated by TIA Playfield Painter ; Mode Used = ASYMMETRICAL ; Playfields generated = PF0, PF1, PF2, PF3, PF4, PF5 ; Datas lines are reversed ; 192 Line(s) saved = 191 - 0 Decision ;LDA #0 ;STA SWCHA ;LDA #8 ;STA REFP0 LDA CXP0FB AND #128 BEQ EstaEnElAire ;Si esta en el aire no puede saltar JMP Aire EstaEnElAire LDA Agarra AND #128 BEQ EnAire2 JMP Aire EnAire2 JMP Decision5 Aire LDA Inventario CMP #85 BEQ VaIzq JMP VaDer VaIzq ;LDA #$20 ;STA HMP0 ;inc ContaX JMP VaS VaDer ;LDA #$E0 ;STA HMP0 ;dec ContaX VaS LDA #14 STA PuntAnim ;;INC Noparray ;;INC Noparray ;;DEC ContaX ;LDY Noparray ;LDA NopsArray,Y ;STA $A6 ;INY ;LDA NopsArray,Y ;STA $A7 ;INC Personaje1 ;INC Vueltas1 ;INC ContaY JMP Decision5 Decision2 LDA #0 ;STA SWCHA ;LDA #8 STA REFP0 LDA #$20 STA HMP0 LDA #85 ;codigo inventado para saber para donde va STA Inventario ;;INC Noparray ;;INC Noparray INC ContaX;DEC ContaX ;LDY Noparray ;LDA NopsArray,Y ;STA $A6 ;INY ;LDA NopsArray,Y ;STA $A7 ;;DEC Personaje1 ;;DEC ContaY JMP Decision5 Decision3 ;LDA #0 ;STA SWCHA LDA #0 STA HMP0 LDA #8 STA REFP0 ;;DEC Noparray ;;DEC Noparray ;;INC ContaX ;LDY Noparray ;LDA NopsArray,Y ;STA $A6 ;INY ;LDA NopsArray,Y ;STA $A7 DEC Personaje1 DEC Vueltas1 ;DEC ContaY JMP Decision5 Decision4 ;LDA #0 ;STA SWCHA LDA #8;0 STA REFP0 LDA #$E0 STA HMP0 LDA #32 ;codigo inventado para saber para donde va STA Inventario ;;DEC Noparray ;;DEC Noparray DEC ContaX;INC ContaX ;LDY Noparray ;LDA NopsArray,Y ;STA $A6 ;INY ;LDA NopsArray,Y ;STA $A7 ;;INC Personaje1 ;;INC ContaY JMP Decision5 Decision5 ;LDA TogCamina ;BEQ CeroCam ;LDA #0 ;STA TogCamina ;LDA Personaje1 ;SEC;CLC ;SBC #28 ;STA Personaje1 ;JMP CeroCamS CeroCam ;LDA #1 ;STA TogCamina ;LDA Personaje1 ;CLC;SEC ;ADC #28 ;STA Personaje1 CeroCamS ; LDA ContaX ;Necesito cambiar el alto de los pixeles con "Vueltas" porque el personaje a la derecha consume muchos ciclos con los "Nops" ; CMP #8 ; BMI CeroCamS2 ; LDA #2 ; STA Vueltas1 ; JMP CeroCamS3 ;CeroCamS2 ; CMP #3 ; BMI AA ; JMP BB ;AA LDA #4 ; STA Vueltas1 ; JMP CeroCamS3 ;BB LDA #3 ; STA Vueltas1 ;CeroCamS3 JMP RetDeci ; LDA PunteroRoom ; ADC #4 ; STA PunteroRoom ; LDY #8 ; LDA (PunteroRoom),Y ;La condicion, tener algo en el inventario ; AND Inventario ; BEQ Cuatro ; DEC $81 ; BEQ Cuatro ;Vuelta ; LDY #0 ; LDA (PunteroRoom),Y ; STA $82 ; INY ; LDA (PunteroRoom),Y ; STA $83 ; INY ; LDA (PunteroRoom),Y ; STA $84 ; INY ; LDA (PunteroRoom),Y ; STA $85 ; JMP RetDeci ;Cuatro ; LDA #2 ; STA $81 ; LDY #0 ; LDX #0 ; LDA PunteroRoomBKP,Y ; STA PunteroRoom,X ; INY ; INX ; LDA PunteroRoomBKP,Y ; STA PunteroRoom,X ; JMP Vuelta Boton ;LDA RoomP1 ;CMP RoomP2 ;BEQ Sabank ;JMP Sasabank lda <#Lvl cmp Backg2 beq Sabank jmp Sasabank Sabank ;LDA #100 ;STA ContAnim JMP Sabnk;LDA $1FF8 Sasabank ; LDA ControlBoton ; CMP #0 ; BEQ Boton2 ; INC ControlBoton ; CMP #7 ; BEQ ResetBoton ; JMP RetDeci ;Boton2 ; LDY #16 ; LDA <(PunteroRoom),Y ; ORA Inventario ; STA Inventario ; ;LDY #18 ;Carga la melodia ; ;LDA (PunteroRoom),Y ; ;STA $A3 ; ;INY ; ;LDA (PunteroRoom),Y ; ;STA $A4 ; ;LDA #10 ; ;STA AUDV0 ; ;LDA #10 ; ;STA $A1 ; ;LDA #0 ; ;STA DuracionNota ; LDY #10 ;Carga imagen ; LDA (PunteroRoom),Y ; STA $88 ; INY ; LDA (PunteroRoom),Y ; STA $89 ; LDY #24 ; LDX #0 ; LDA (PunteroRoom),Y ; STA Temp,X ; ;STA PunteroRoom,X ; ;STA PunteroRoomBKP,X ; INY ; INX ; LDA (PunteroRoom),Y ; STA Temp,X ; ;STA PunteroRoom,X ; ;STA PunteroRoomBKP,X ; LDX #0 ; LDY #0 ; LDA Temp,Y ; STA PunteroRoom,X ; STA PunteroRoomBKP,X ; INY ; INX ; LDA Temp,Y ; STA PunteroRoom,X ; STA PunteroRoomBKP,X ; INC ControlBoton ; JMP RetDeci;Vuelta;RetDeci ;ResetBoton ; LDA #0 ; STA ControlBoton JMP RetDeci ; ALIGN 256 MapaMundi .byte 0,0,0,0,0 Cero2 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Cero2.2 .byte #%00000010 .byte #%10010101 .byte #%01111010 .byte #%00111000 CeroLin1 lda EstadoJuego cmp #32 beq Oeil Linea1 Cero2,Cero2,Cero2,Cero2 Oeil Linea1 Cero2,Cero2.2,Cero2,Cero2 ;CeroLine ;Linea2 Cero2,Cero2,Cero2,Cero2 ;Linea2 D,A,Y,One Habitacion1 ALIGN 256 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Oil .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 ;----------------------------------- .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000010 .byte #%00010101 .byte #%10010110 .byte #%01111100 .byte #%00111000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 PalancaDer .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000010 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00100000 .byte #%00000000 .byte #%00000000 Arcos22Der .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 ;------------------------------------------- .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Arcos21 .byte #%00000000 .byte #%00111111 .byte #%01000010 .byte #%11111100 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Palanca .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00010000 .byte #%00010000 .byte #%00010000 .byte #%01111100 .byte #%01000100 .byte #%00000000 .byte #%00000000 Arcos22 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 ;--------------------------------------------------- .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 ;------------------------------------------ .byte #%00000000 .byte #%00000000 .byte #%00001110 .byte #%00010100 .byte #%00111000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00001110 .byte #%00010100 .byte #%00111000 .byte #%00000000 ;Palanca .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00001110 .byte #%00000000 .byte #%00111000 .byte #%00000000 .byte #%11101110 .byte #%00000000 .byte #%00111000 .byte #%00000000 .byte #%00000000 PisoIzq .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%00000000 ALIGN 256 .byte #%00000000 .byte #%00000000 .byte #%00000000 ;------------------------------------------ .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 ;------------------------------------------ .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Arcos22_2 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%00000000 Arcos23 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Palanca2 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%01000100 .byte #%01111100 .byte #%00010000 .byte #%00010000 .byte #%00010000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%11111111 .byte #%00000000 .byte #%00000000 ;--------------------- .byte #%00000000 .byte #%00000000 .byte #%00000000 ;----------------------- .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Lvl .byte #%00000000 .byte #%11111000 .byte #%00001000 .byte #%00001000 .byte #%00001000 .byte #%00001000 .byte #%00001000 .byte #%00001000 .byte #%00001000 .byte #%00001000 .byte #%11111100 .byte #%00000010 .byte #%11111111 .byte #%00100000 .byte #%00100000 .byte #%00100000 .byte #%11100000 Arcos_Escaler .byte #%00100000 .byte #%00100000 .byte #%00100000 .byte #%00100000 .byte #%11100000 .byte #%00100000 .byte #%00100000 .byte #%00100000 .byte #%00100000 .byte #%11100000 .byte #%00100000 .byte #%00100000 .byte #%00100000 .byte #%00100000 .byte #%11100000 .byte #%00100000 .byte #%00100000 .byte #%00100000 .byte #%00100000 .byte #%11100000 .byte #%00100000 .byte #%00100000 .byte #%00100000 .byte #%00100000 .byte #%11100000 .byte #%00100000 .byte #%00100000 .byte #%00100000 .byte #%00100000 .byte #%11100000 .byte #%00100000 .byte #%00100000 .byte #%00100000 .byte #%11111111 .byte #%00100000 .byte #%11111111 .byte #%00000000 .byte #%00000000 Arcos0 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 .byte #%11111111 Muelle .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Muelle2 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 MuelleC .byte #Azul .byte #Azul + 1 .byte #Azul + 2 .byte #Azul + 3 .byte #Azul + 4 .byte #Verde .byte #Azul + 5 .byte #Naranja .byte #Naranja + 1 .byte #Azul + 6 .byte #Azul + 7 .byte #Azul + 8 .byte #Azul + 9 .byte #Azul + 10 .byte #Azul .byte #Azul + 1 .byte #Azul + 2 .byte #Azul + 3 MuelleC2 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #0 .byte #Gris .byte #Gris ColorP .byte #Naranja; %00000000 .byte #Naranja; %00000000 .byte #Naranja; %00000000 .byte #Naranja; %00000000 .byte #Naranja; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #255; %00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 ;include "imagen4.txt" ;include "calle.btm" ;include "pirata.btm" Linea LDX #4 ; 192 Scanlines to Display LDY #0 Draw_Picture LDA #8 STA $80 DoblePasada STA WSYNC LDA ($92),Y STA PF0 LDA Cero2,Y STA PF1 LDA ($94),Y STA PF2 SLEEP 4 LDA ($96),Y STA PF0 LDA Cero2,Y STA PF1 LDA ($98),Y STA PF2 DEC $80 BNE DoblePasada INY DEX BNE Draw_Picture RTS Anim .word #Anim1 .word #Anim2 .word #Anim3 .word #Anim4 .word #Anim5 .word #Anim6 .word #Anim7 .word #Anim8 .word #Anim9 .word #Anim10 .word #Anim11 .word #Anim12 .word #Anim13 .word #Anim14 .word #Anim15 .word #swAnim8 .word #swAnim9 .word #swAnim10 .word #swAnim11 .word #swAnim12 .word #swAnim13 .word #swAnim14 .word #swAnim15 .word #swAnim16 .word #swAnim17 .word #swAnim18 .word #swAnim15_ Anim1 LDA #215 STA COLUP0 STA COLUP1 ;LDA #6 ;STA RoomP2 LDA #$40 STA HMP1 lda CamFlag beq Parat LDA <#Text1 STA Personaje1 LDA >#Text1 STA Personaje1 + 1 jmp Parats Parat lda <#Parado sta Personaje1 lda >#Parado sta Personaje1 + 1 Parats DEC ContAnim BEQ SumarAnim JMP RetornoAnim SumarAnim lda CamFlag beq Parat2 LDA <#Text2 STA Personaje1 LDA >#Text2 STA Personaje1 + 1 jmp Parats2 Parat2 lda <#Parado sta Personaje1 lda >#Parado sta Personaje1 + 1 Parats2 LDA #0 STA HMP1 INC PuntAnim INC PuntAnim LDA #5; 10 ;255;50 STA ContAnim JMP RetornoAnim Anim2 DEC ContAnim BEQ SumarAnim2 JMP RetornoAnim SumarAnim2 lda CamFlag beq Parat3 LDA <#Text3 STA Personaje1 LDA >#Text3 STA Personaje1 + 1 jmp Parats3 Parat3 lda <#Parado2 sta Personaje1 lda >#Parado2 sta Personaje1 + 1 Parats3 LDA #5; 10 ;255;50 STA ContAnim STA WSYNC ;para evitar el gris por lineas impares STA WSYNC INC PuntAnim INC PuntAnim JMP RetornoAnim Anim3 ;LDA #0 ;STA COLUBK ;JMP Start_Frame0 DEC ContAnim BEQ SumarAnim3 JMP RetornoAnim SumarAnim3 lda CamFlag beq Parat4 LDA <#Text4 STA Personaje1 LDA >#Text4 STA Personaje1 + 1 jmp Parats4 Parat4 lda ColPir beq Fling lda <#Volar2 sta Personaje1 lda >#Volar2 sta Personaje1 + 1 jmp Parats4 Fling lda <#Parado2 sta Personaje1 lda >#Parado2 sta Personaje1 + 1 Parats4 LDA #5; 10 ;255;50 STA ContAnim STA WSYNC STA WSYNC CLC LDA Backg ADC ColPir STA Backg LDA Backg2 ADC ColPir STA Backg2 LDA Backg3 ADC ColPir STA Backg3 INC PuntAnim INC PuntAnim JMP RetornoAnim Anim4 DEC ContAnim BEQ SumarAnim4 JMP RetornoAnim SumarAnim4 lda CamFlag beq Parat5 LDA <#Text5 STA Personaje1 LDA >#Text5 STA Personaje1 + 1 jmp Parats5 Parat5 lda ColPir beq Fling2 lda <#Volar sta Personaje1 lda >#Volar sta Personaje1 + 1 jmp Parats5 Fling2 lda <#Parado sta Personaje1 lda >#Parado sta Personaje1 + 1 Parats5 LDA #5; 10 STA ContAnim STA WSYNC STA WSYNC CLC LDA Backg ADC ColPir STA Backg LDA Backg2 ADC ColPir STA Backg2 LDA Backg3 ADC ColPir STA Backg3 INC PuntAnim INC PuntAnim JMP RetornoAnim Anim5 DEC ContAnim BEQ SumarAnim5 JMP RetornoAnim SumarAnim5 lda CamFlag beq Parat6 LDA <#Text6 STA Personaje1 LDA >#Text6 STA Personaje1 + 1 jmp Parats6 Parat6 lda ColPir beq Fling3 lda <#Volar sta Personaje1 lda >#Volar sta Personaje1 + 1 jmp Parats6 Fling3 lda <#Parado sta Personaje1 lda >#Parado sta Personaje1 + 1 Parats6 LDA #5; 10 STA ContAnim STA WSYNC STA WSYNC CLC LDA Backg ADC ColPir STA Backg LDA Backg2 ADC ColPir STA Backg2 LDA Backg3 ADC ColPir STA Backg3 INC PuntAnim INC PuntAnim JMP RetornoAnim Anim6 DEC ContAnim BEQ SumarAnim6 JMP RetornoAnim SumarAnim6 lda CamFlag beq Parat7 LDA <#Text7 STA Personaje1 LDA >#Text7 STA Personaje1 + 1 jmp Parats7 Parat7 lda ColPir beq Fling4 lda <#Volar2 sta Personaje1 lda >#Volar2 sta Personaje1 + 1 jmp Parats7 Fling4 lda <#Parado2 sta Personaje1 lda >#Parado2 sta Personaje1 + 1 Parats7 LDA #5; 10 STA ContAnim STA WSYNC STA WSYNC CLC LDA Backg ADC ColPir STA Backg LDA Backg2 ADC ColPir STA Backg2 LDA Backg3 ADC ColPir STA Backg3 INC PuntAnim INC PuntAnim JMP RetornoAnim Anim7 DEC ContAnim BEQ SumarAnim7 JMP RetornoAnim SumarAnim7 LDA #4 STA PuntAnim LDA #1 STA ContAnim STA WSYNC STA WSYNC CLC LDA Backg ADC ColPir STA Backg LDA Backg2 ADC ColPir STA Backg2 LDA Backg3 ADC ColPir STA Backg3 JMP RetornoAnim Anim8 LDA <#Tex1 STA Personaje1 LDA >#Tex1 STA Personaje1 + 1 STA WSYNC STA WSYNC DEC Backg DEC Backg2 dec Backg3 DEC ContAnim BEQ SumarAnim8 JMP RetornoAnim SumarAnim8 LDA <#Tex2 STA Personaje1 LDA >#Tex2 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC DEC Backg DEC Backg2 dec Backg3 INC PuntAnim INC PuntAnim JMP RetornoAnim Anim9 DEC ContAnim BEQ SumarAnim9 JMP RetornoAnim SumarAnim9 LDA <#Tex3 STA Personaje1 LDA >#Tex3 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC DEC Backg DEC Backg2 dec Backg3 INC PuntAnim INC PuntAnim JMP RetornoAnim Anim10 DEC ContAnim BEQ SumarAnim10 JMP RetornoAnim SumarAnim10 LDA <#Tex4 STA Personaje1 LDA >#Tex4 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC DEC Backg DEC Backg2 dec Backg3 INC PuntAnim INC PuntAnim JMP RetornoAnim Anim11 DEC ContAnim BEQ SumarAnim11 JMP RetornoAnim SumarAnim11 LDA <#Tex5 STA Personaje1 LDA >#Tex5 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC DEC Backg DEC Backg2 dec Backg3 INC PuntAnim INC PuntAnim JMP RetornoAnim Anim12 DEC ContAnim BEQ SumarAnim12 JMP RetornoAnim SumarAnim12 LDA <#Tex6 STA Personaje1 LDA >#Tex6 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC DEC Backg DEC Backg2 dec Backg3 INC PuntAnim INC PuntAnim JMP RetornoAnim Anim13 DEC ContAnim BEQ SumarAnim13 JMP RetornoAnim SumarAnim13 LDA <#Tex7 STA Personaje1 LDA >#Tex7 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC DEC Backg DEC Backg2 dec Backg3 INC PuntAnim INC PuntAnim JMP RetornoAnim Anim14 DEC ContAnim BEQ SumarAnim14 JMP RetornoAnim SumarAnim14 LDA <#Tex8 STA Personaje1 LDA >#Tex8 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC DEC Backg DEC Backg2 dec Backg3 INC PuntAnim INC PuntAnim JMP RetornoAnim Anim15 DEC ContAnim BEQ SumarAnim15 JMP RetornoAnim SumarAnim15 LDA #4 STA PuntAnim LDA #1 STA ContAnim STA WSYNC STA WSYNC DEC Backg DEC Backg2 dec Backg3 JMP RetornoAnim Isla ;DibujaHabitacion4 ;Carpa LDX #18 ;10 ; 192 Scanlines to Display LDY #0 LDA $BE BEQ Isla2 LDA #0 STA $90 LDA #Naranja STA $A0 JMP Draw_PictureW2 Isla2 LDA #0;Verde;#Celeste ;SBC #13 ;LDA #219 STA $90 LDA #Naranja;Celeste;#Verde ;SBC #11 ;LDA #215 ;LDA #0 STA $A0 Draw_PictureW2 LDA #2; 4;Vueltas;#4 STA $80 ;LDA $90 ;ADC #1 ;STA $90 ;;INC $90 ;;INC $A0 DoblePasadaW2 ;STX COLUPF LDA $A0 STA COLUPF LDA $90 STA COLUBK STA WSYNC lda (Backg3),y ;LDA #0;Arcos12,Y STA PF0 LDA (Backg),Y ;Arcos22,Y STA PF1 LDA (Backg2),Y;#0;Arcos22,Y ;lda RoomP1;LDA ContaX ;para ver su valor en binario STA PF2 ;JMP ($A6) ;Nops NoOper ; LDA TogPersonaje ; BEQ CePers ; JMP HaPers CePers ; LDA (Vueltas1),Y ; STA COLUP1 ; LDA (Personaje),Y ; STA GRP1 ; JMP SaPers HaPers LDA (Vueltas1),Y STA COLUP0 LDA (Personaje),Y STA GRP0 cpy #11 bmi SaPers LDA CXP0FB sta Toca jmp SaSP SaPers cpy #5 bmi SaPe LDA #0 STA CXCLR jmp SaSP SaPe LDA CXP0FB sta Agarra lda AgFlag beq Pone7 jmp SaSP Pone7 lda #7 sta AgFlag SaSP ;STA RESP0 DEC $80 BNE DoblePasadaW2 INY DEX BNE Draw_PictureW2 JMP Retorno3 IslaBack LDX #18 ;10 ; 192 Scanlines to Display LDY #0 sec lda Backg3 sbc #18 sta Bck3 lda Backg3 + 1 sbc #0 sta Bck3 + 1 sec lda Backg2 sbc #18 sta Bck2 lda Backg2 + 1 sbc #0 sta Bck2 + 1 sec lda Backg sbc #18 sta Bck lda Backg + 1 sbc #0 sta Bck + 1 Draw_PictureW22 lda #2 sta $80 DoblePasada__ LDA #4;Vueltas;#4 STA $80 LDA #0;MuelleC,Y STA COLUBK LDA #Naranja;MuelleC2,Y STA COLUPF STA WSYNC LDA (Bck3),Y ;#0;Arcos12,Y STA PF0 LDA (Bck),Y ;Muelle,Y ;Arcos22,Y STA PF1 LDA (Bck2),Y ;RoomP1 ;para ver su valor en binario ;Muelle2,Y;#0;Arcos22,Y STA PF2 ;dec $80 ;bne DoblePasada__ INY DEX BNE Draw_PictureW22 JMP Retorno2 ; LDX #8 ; 192 Scanlines to Display ; LDA #Verde ; SBC #10 ; STA $A0 ;Draw_PictureW_Verde ; LDA #4 ; STA $80 ; LDA $90 ; ADC #1 ; STA $90 ; ;INC $90 ; INC $A0 ;DoblePasadaW_Verde ; ;STX COLUPF ; LDA $A0 ; STA COLUPF ; LDA $90 ; STA COLUBK ; STA WSYNC ; LDA Arcos12,Y ; NOP ;Si este nop lo pongo dos lineas mas arriba no funciona el juego paso de habitacion y se queda esperando, el puntanim de 6 vuelve a 2 y el roomp2 se pone en cero ??????? ; STA PF0 ; LDA Arcos22,Y ; STA PF1 ; LDA Arcos32,Y ; STA PF2 ; DEC $80 ; BNE DoblePasadaW_Verde ; INY ; DEX ; BNE Draw_PictureW_Verde ; ; JMP Retorno3 Musica LDA DuracionNota BEQ ResetNota DEC DuracionNota JMP RetornarA4 ResetNota LDA #20 STA DuracionNota LDA $A1 ;CMP #0 BEQ RetornarA4 LDY $A1 LDA ($A3),Y BEQ Volumen STA AUDF0 DEC $A1 DEC DuracionNota RetornarA4 JMP Retorno4 Volumen ;LDA #0 ;STA AUDV0 LDA #34;150 STA $A1 LDY $A1 LDA ($A3),Y STA AUDF0 DEC $A1 JMP Retorno4 Melodia .byte #0 .byte #0 .byte E_2 .byte D_2 .byte E_2 .byte F_2 .byte D_2 .byte C_2 .byte D_2;B_2 .byte C_2 .byte E_2 .byte D_2 .byte E_2 .byte F_2 .byte G_2 .byte A_2 .byte G_2 .byte F_2 .byte E_2 .byte D_2 .byte C_2 .byte E_2 .byte G_2 .byte C_3 .byte B_2 .byte C_3 .byte G_2 .byte G_2 .byte A_2 .byte F_2 .byte F_2 .byte G_2 .byte E_2 .byte D_2 .byte C_2 Text1 .byte #%00000000 .byte #%00110000 .byte #%00110000 .byte #%00110000 .byte #%00001000 .byte #%00001000 .byte #%00001000 .byte #%00010100 .byte #%00001100 .byte #%00010100 .byte #%00010100 .byte #%00000010 .byte #%00001001 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Text2 .byte #%00000000 .byte #%01100000 .byte #%01100000 .byte #%01100000 .byte #%00110000 .byte #%00001000 .byte #%01110000 .byte #%00001000 .byte #%00111000 .byte #%01101100 .byte #%01100110 .byte #%00100011 .byte #%00100001 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Text3 .byte #%00000000 .byte #%01100000 .byte #%01100000 .byte #%01100000 .byte #%00110000 .byte #%00010000 .byte #%00010000 .byte #%00100000 .byte #%00111000 .byte #%00101000 .byte #%00101111 .byte #%00100001 .byte #%00100000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Text4 .byte #%00000000 .byte #%01000000 .byte #%01100000 .byte #%01100000 .byte #%00100000 .byte #%00100000 .byte #%11010000 .byte #%00110000 .byte #%00110000 .byte #%01110000 .byte #%00111000 .byte #%00010100 .byte #%00001000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Text5 .byte #%00000000 .byte #%01000000 .byte #%01100000 .byte #%01100000 .byte #%00100000 .byte #%00010000 .byte #%11101000 .byte #%00101000 .byte #%00010000 .byte #%00110000 .byte #%01101000 .byte #%01100100 .byte #%00100010 .byte #%00100010 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Text6 .byte #%00000000 .byte #%01100000 .byte #%01100000 .byte #%01100000 .byte #%00010000 .byte #%01001000 .byte #%01010000 .byte #%00001000 .byte #%00011000 .byte #%00101000 .byte #%00101111 .byte #%00010001 .byte #%00010000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Text7 .byte #%00000000 .byte #%00000000 .byte #%01100000 .byte #%01100000 .byte #%00100000 .byte #%00010000 .byte #%01110000 .byte #%01010000 .byte #%00010000 .byte #%00110000 .byte #%00111110 .byte #%00010010 .byte #%00011000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Tex1 .byte #%00000000 .byte #%00000000 .byte #%00110000 .byte #%00110000 .byte #%00001100 .byte #%00011111 .byte #%00011101 .byte #%01100100 .byte #%00011000 .byte #%00011110 .byte #%00001010 .byte #%00000100 .byte #%00000110 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Tex2 .byte #%00000000 .byte #%00000000 .byte #%00110000 .byte #%00110110 .byte #%10001001 .byte #%01111000 .byte #%00011000 .byte #%00111100 .byte #%01111100 .byte #%01101100 .byte #%00100100 .byte #%00100111 .byte #%00000001 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Tex3 .byte #%00110000 .byte #%00110000 .byte #%10000000 .byte #%01110000 .byte #%00011000 .byte #%00011100 .byte #%01110000 .byte #%01001100 .byte #%00101100 .byte #%01100100 .byte #%00000010 .byte #%00000011 .byte #%00000001 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Tex4 .byte #%00000000 .byte #%00000000 .byte #%10100000 .byte #%01110000 .byte #%00110000 .byte #%00011000 .byte #%00011000 .byte #%00111000 .byte #%01011000 .byte #%10001100 .byte #%10000110 .byte #%00000011 .byte #%00000001 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Tex5 .byte #%00000000 .byte #%01111000 .byte #%01111000 .byte #%00101100 .byte #%00001100 .byte #%01111100 .byte #%10001100 .byte #%00000010 .byte #%00000001 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Tex6 .byte #%00000000 .byte #%01111000 .byte #%01101100 .byte #%00001010 .byte #%00011001 .byte #%01111000 .byte #%10011111 .byte #%00001100 .byte #%00000100 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Tex7 .byte #%00000000 .byte #%01111000 .byte #%01101110 .byte #%00001011 .byte #%00001000 .byte #%00011000 .byte #%01110110 .byte #%01111010 .byte #%01011000 .byte #%10000000 .byte #%10000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Tex8 .byte #%00000000 .byte #%00000000 .byte #%01100000 .byte #%01110000 .byte #%00001100 .byte #%00001010 .byte #%00001101 .byte #%00111000 .byte #%00110000 .byte #%00010000 .byte #%00001000 .byte #%00011000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Swin .byte #%01000000 .byte #%00100000 .byte #%01100000 .byte #%01110000 .byte #%00001100 .byte #%00001010 .byte #%00001101 .byte #%00011000 .byte #%00010000 .byte #%00010000 .byte #%00001000 .byte #%00011000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Swin2 .byte #%01000000 .byte #%00100000 .byte #%01100000 .byte #%01110000 .byte #%00011000 .byte #%00011000 .byte #%00011000 .byte #%00011000 .byte #%00010000 .byte #%00010000 .byte #%00010000 .byte #%00010000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Swin3 .byte #%01000000 .byte #%00100000 .byte #%01100000 .byte #%01110000 .byte #%00110000 .byte #%00110000 .byte #%00110000 .byte #%00110000 .byte #%00100000 .byte #%01000000 .byte #%10000000 .byte #%10000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Swin4 .byte #%01000000 .byte #%01000000 .byte #%01100000 .byte #%01100000 .byte #%01100000 .byte #%01100000 .byte #%01100000 .byte #%01100000 .byte #%01100000 .byte #%10000000 .byte #%10000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Swin5 .byte #%01000000 .byte #%00100000 .byte #%01100000 .byte #%01110000 .byte #%00001100 .byte #%00001010 .byte #%00001101 .byte #%00001000 .byte #%00001000 .byte #%00001000 .byte #%00000100 .byte #%00000100 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Swin6 .byte #%01000000 .byte #%00100000 .byte #%00010000 .byte #%00111000 .byte #%00001100 .byte #%00000110 .byte #%00000101 .byte #%00000100 .byte #%00000100 .byte #%00000100 .byte #%00000010 .byte #%00000001 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Swin7 .byte #%01000000 .byte #%00100000 .byte #%00010000 .byte #%00011000 .byte #%00001100 .byte #%00000110 .byte #%00000111 .byte #%00000010 .byte #%00000010 .byte #%00000010 .byte #%00000001 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Parado .byte #%00000000 .byte #%01100000 .byte #%01110000 .byte #%00100000 .byte #%00011000 .byte #%00011100 .byte #%00111010 .byte #%10001001 .byte #%00010100 .byte #%00100100 .byte #%01000010 .byte #%00100010 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Parado2 .byte #%00000000 .byte #%01100000 .byte #%01110000 .byte #%00100000 .byte #%00111100 .byte #%00111010 .byte #%01011010 .byte #%10001001 .byte #%00010100 .byte #%00100100 .byte #%01000010 .byte #%00100010 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Volar .byte #%00000000 .byte #%00000000 .byte #%01100000 .byte #%01110000 .byte #%00001100 .byte #%00001010 .byte #%00001101 .byte #%00111000 .byte #%00110000 .byte #%00010000 .byte #%00001000 .byte #%00011000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 Volar2 .byte #%00000000 .byte #%00000000 .byte #%01100000 .byte #%01110000 .byte #%00001110 .byte #%00001001 .byte #%00001100 .byte #%00111000 .byte #%00110000 .byte #%00011000 .byte #%00000100 .byte #%00001100 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 .byte #%00000000 swAnim8 LDA <#Swin STA Personaje1 LDA >#Swin STA Personaje1 + 1 STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 DEC ContAnim BEQ swSumarAnim8 JMP RetornoAnim swSumarAnim8 LDA <#Swin2 STA Personaje1 LDA >#Swin2 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP RetornoAnim swAnim9 DEC ContAnim BEQ swSumarAnim9 JMP RetornoAnim swSumarAnim9 LDA <#Swin3 STA Personaje1 LDA >#Swin3 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP RetornoAnim swAnim10 DEC ContAnim BEQ swSumarAnim10 JMP RetornoAnim swSumarAnim10 LDA <#Swin4 STA Personaje1 LDA >#Swin4 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP RetornoAnim swAnim11 DEC ContAnim BEQ swSumarAnim11 JMP RetornoAnim swSumarAnim11 LDA <#Swin3 STA Personaje1 LDA >#Swin3 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP RetornoAnim swAnim12 DEC ContAnim BEQ swSumarAnim12 JMP RetornoAnim swSumarAnim12 LDA <#Swin2 STA Personaje1 LDA >#Swin2 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP RetornoAnim swAnim13 DEC ContAnim BEQ swSumarAnim13 JMP RetornoAnim swSumarAnim13 LDA <#Swin STA Personaje1 LDA >#Swin STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP RetornoAnim swAnim14 DEC ContAnim BEQ swSumarAnim14 JMP RetornoAnim swSumarAnim14 LDA <#Swin5 STA Personaje1 LDA >#Swin5 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP RetornoAnim swAnim15 DEC ContAnim BEQ swSumarAnim15 JMP RetornoAnim swSumarAnim15 LDA <#Swin6 STA Personaje1 LDA >#Swin6 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP RetornoAnim swAnim16 DEC ContAnim BEQ swSumarAnim16 JMP RetornoAnim swSumarAnim16 LDA <#Swin7 STA Personaje1 LDA >#Swin7 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP RetornoAnim swAnim17 DEC ContAnim BEQ swSumarAnim17 JMP RetornoAnim swSumarAnim17 LDA <#Swin6 STA Personaje1 LDA >#Swin6 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP RetornoAnim swAnim18 DEC ContAnim BEQ swSumarAnim18 JMP RetornoAnim swSumarAnim18 LDA <#Swin5 STA Personaje1 LDA >#Swin5 STA Personaje1 + 1 LDA #5 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 INC PuntAnim INC PuntAnim DEC AgFlag JMP RetornoAnim swAnim15_ DEC ContAnim BEQ swSumarAnim15_ JMP RetornoAnim swSumarAnim15_ LDA #30 STA PuntAnim LDA #1 STA ContAnim STA WSYNC STA WSYNC ;DEC Backg ;DEC Backg2 JMP RetornoAnim ;////////////// Set Vectors /////////////////////////////////////////// ORG $EFFA RORG $FFFA ; Interrupt Vectors .word Reset ; NMI .word Reset ; RESET .word Reset ; IRQ ;END END