manolito74
|
|
« : 07 de Junio de 2013, 12:06:38 am » |
|
Hola: Recurro a vosotros para ver si alguien puede echarme un cable. Tengo por aquí alguna cinta con programillas en Basic y otros programas que había grabado en su día, juegos, etc. Y estoy intentando recuperarlas. Las cintas están bien y el cassette las lee perfectamente. El problema es que como es una cinta de las de 60 minutos y está llenaaaa de Programas quiero automatizar el Proceso al máximo posible para pasarlas a disco. Buscando buscando entre mis cosas encontré el Programa cuyo código os pongo a continuación. El Programa en sí está bastante bien: carga un Programa de la cinta, nos dice su tipo de carga y si es un Programa en Código Máquina nos da las direcciones de inicio-fin-ejecución. ¿Cuál es el problema?: que este Programa solo lee las Cabeceras de los Bloques que se va encontrado. Es decir, si yo quiero grabar un Programa Código Máquina al Disco tengo que hacer lo siguiente: - Ejecutar este Programa. - Pongo el Cassette y este Programa carga la Cabecera y nos da las direcciones de Inicio-Fin-Ejecución. - Luego tengo que rebobinar la cinta de nuevo cargar el Programa con un "Bload" sin ejecutarlo. - Cuando acaba de cagar lo grabo al disco usando las direcciones que obtuvimos antes. Lo que necesitaría es modificar el Programa que os pongo para que se lea UN BLOQUE COMPLETO HASTA EL FINAL y al llegar al final nos dé las direcciones de Inicio-Fin-Ejecución, así en ese momento bastaría con hacer un "Bsave" usando esos datos pasándolo al disco sin tener que rebobinar la cinta... :-( ¿Alguien se le ocurre como modificar el Programa para que haga eso? Sí, sé que en el caso de que se modifique con los Programas en Código Máquina muy bien pero con cuando el Programa que os pongo lea un Bloque y sea en Basic me tocará rebobinar la cinta cargarlo con "Load" sin ejecutarlo y luego grabarlo. Lo que ya sería la caña es reubicar el Programa que os pongo en una zona de la memoria de tal forma que deje libre la zona de carga del Basic y no "moleste" y que identificara y permitiera cargar cualquier bloque de cinta, mostrarnos los datos y grabarlo a disco... Pues nada, aquí os dejo el susodicho Programa y a ver quién me puede echar un cable. ¡Mil Gracias & Saludetes! 10 KEY OFF:SCREEN 0:COLOR 15,4,4
20 U=&HF610:DEFUSR=U
30 FORI=UTOU+62
40 READK:POKEI,K
50 NEXT
60 CLS
70 PRINT:PRINT"******* COPION DE CINTA A DISCO*******":PRINT:PRINT:PRINT
80 PRINT"Prepare el cassette para cargar"
81 PRINT:PRINT:INPUT"Pulsa return cuando este preparado";A$
82 IF A$="" THEN GOTO 83
83 PRINT:BEEP:PRINT:BEEP:PRINT:BEEP:PRINT:BEEP:PRINT:BEEP:PRINT:BEEP:PRINT
84 PRINT:BEEP:PRINT:BEEP:PRINT:BEEP:PRINT:BEEP:PRINT:BEEP:PRINT:BEEP:PRINT
85 PRINT:BEEP:PRINT:BEEP:PRINT:BEEP:PRINT:BEEP:PRINT:BEEP:PRINT:BEEP:PRINT:BEEP:PRINT:BEEP:PRINT
86 BEEP:LOCATE 0,0:PRINT"OOOOOOOCOPION DE CINTA A DISCOOOOOOOO"
90 A=USR(0)
100 F$=""
110 B=&HF600
120 T=PEEK(B)
130 IF(T<>&HD0)AND(T<>&HD3)AND(T<>&HEA)THENGOTO 460
140 FORI=B+1TOB+6
150 F$=F$+CHR$(PEEK(I))
160 NEXT
170 BEEP:PRINT:PRINT:PRINT"Nombre:",F$
180 BEEP:PRINT"Programa:";
190 IFT=&HD0THENGOTO 260
200 IFT=&HD3THENGOTO 240
210 BEEP:PRINT"DATA FILE/"
220 BEEP:PRINTTAB(13);"*** Basic y Ascii ***"
230 GOTO 340
240 BEEP:PRINT"**** Programa Basic ****"
250 GOTO 340
260 BEEP:PRINT"**** C¢digo M quina ****"
270 S=PEEK(B+7)+PEEK(B+8)*256
280 E=PEEK(B+9)+PEEK(B+10)*256
290 X=PEEK(B+11)+PEEK(B+12)*256
300 PRINT
310 PRINT"1.DIREC. Inicio=&H";HEX$(S)
320 PRINT"2.DIREC. Final=&H";HEX$(E)
330 PRINT"3.DIREC. Ejecuci¢n=&H";HEX$(X)
340 BEEP:PRINT:PRINT"Rebobine la cinta al principio del"
341 BEEP:PRINT"bloque que haya cargado"
342 BEEP:PRINT:PRINT"Para cargar el programa ponga...":PRINT
350 D$=CHR$(34)
360 IFT=&HD0THENC$="BLOAD"ELSEC$="LOAD"
370 PRINTC$;D$;"CAS:";D$
390 BEEP:PRINT:PRINT"Grabelo en el Diskette con...":PRINT
400 IFT=&HD0 THENGOTO 430
410 BEEP:PRINT"SAVE("D$;F$;D$;")"
420 GOTO 440
430 BEEP:PRINT"BSAVE";D$;F$;D$;",&H";HEX$(S);",&H";HEX$(E);",&H";HEX$(X)
440 BEEP:PRINT:PRINT" (C)Phoenix Software "
450 END
460 PRINT"FICHERO NO RECONOCIDO":END
470 DATA &H21,&H00,&HF6,&HE5
480 DATA &HCD,&HE1,&H00,&H38
490 DATA &H24,&HCD,&H47,&HF6
500 DATA &H4F,&H06,&H09,&HCD
510 DATA &H47,&HF6,&HB9,&H20
520 DATA &HEF,&H10,&HF8,&HE1
530 DATA &H71,&HCD,&H31,&HF6
540 DATA &HE5,&HCD,&HE1,&H00
550 DATA &HE1,&H06,&H06,&HCD
560 DATA &H47,&HF6,&H23,&H77
570 DATA &H10,&HF9,&HC3,&HE7
580 DATA &H00,&HCD,&HE7,&H00
590 DATA &HDD,&H21,&HB2,&H73
600 DATA &HC3,&H59,&H01,&HD9
610 DATA &HCD,&HE4,&H00,&H38
620 DATA &HF0,&HD9,&HC9
Otra cosilla, si no me equivoco este Programa no distingue o nos informa de cuando un Programa carga con "Load" y cuando carga con "Cload", ¿no?
|
|
|
En línea
|
|
|
|
phsoft
|
|
« Respuesta #1 : 09 de Junio de 2013, 01:59:42 pm » |
|
buenas, pichorrica. no es lo que tu pides, pero te pueder servir para lo que quieres hacer 10 KEY OFF:SCREEN 0:WIDTH40 20 COLOR15,4,4 30 ON ERROR GOTO 600 40 CY=2:NL=899 50 U=&HF610:DEFUSR=U 60 FORI=UTOU+62 70 READK:POKEI,K 80 NEXT 90 REM ********************** 100 CLS 110 LOCATE4,0:PRINT"*** Listar bloques de caset ***" 120 LOCATE10,1:PRINT"(C)Phoenix Software" 130 LOCATE12,22:PRINT"pulsa una tecla" 140 A$=INKEY$:IFA$=""THEN140 150 LOCATE12,22:PRINT" " 160 REM ********************** 170 A=USR(0) 180 F$="":CY=CY+1:NL=NL+1 190 B=&HF600 200 T=PEEK(B) 210 IF(T<>&HD0)AND(T<>&HD3)AND(T<>&HEA)THENGOTO 410 220 FORI=B+1TOB+6 230 F$=F$+CHR$(PEEK(I)) 240 NEXT 250 LOCATE0,CY:PRINT NL;"' ";F$ 260 IFT=&HD0THENGOTO 330 270 IFT=&HD3THENGOTO 310 280 REM ******************* 290 LOCATE 13,CY:PRINT" .sav" 300 GOTO 170 310 LOCATE 13,CY:PRINT" .csav" 320 GOTO 170 330 LOCATE 13,CY:PRINT" .bsav" 340 S=PEEK(B+7)+PEEK(B+8)*256 350 E=PEEK(B+9)+PEEK(B+10)*256 360 X=PEEK(B+11)+PEEK(B+12)*256 370 LOCATE22,CY:PRINT HEX$(S) 380 LOCATE28,CY:PRINT HEX$(E) 390 LOCATE34,CY:PRINT HEX$(X) 400 GOTO 170 410 PRINT"FICHERO NO RECONOCIDO":END 420 REM ******************** 430 DATA &H21,&H00,&HF6,&HE5 440 DATA &HCD,&HE1,&H00,&H38 450 DATA &H24,&HCD,&H47,&HF6 460 DATA &H4F,&H06,&H09,&HCD 470 DATA &H47,&HF6,&HB9,&H20 480 DATA &HEF,&H10,&HF8,&HE1 490 DATA &H71,&HCD,&H31,&HF6 500 DATA &HE5,&HCD,&HE1,&H00 510 DATA &HE1,&H06,&H06,&HCD 520 DATA &H47,&HF6,&H23,&H77 530 DATA &H10,&HF9,&HC3,&HE7 540 DATA &H00,&HCD,&HE7,&H00 550 DATA &HDD,&H21,&HB2,&H73 560 DATA &HC3,&H59,&H01,&HD9 570 DATA &HCD,&HE4,&H00,&H38 580 DATA &HF0,&HD9,&HC9 590 REM ******************* 600 LOCATE12,22:PRINT"Fin de la cinta?" 610 END
la idea es poner la cinta a correr y crear una lista con las cabeceras de los bloques que el programa va encontrando. el programa si distingue save, csave y binarios, aunque tenía un fallo, creo (el save y el csave estaban al revés, no sé). la lista se puede guardar como un programa (todo rems) en el propio disco, el caset, etc. en el emulador funciona, en un msx real pues ni idea. supongo que debería. he puesto un fichero cas del meisei de ejemplo (en el zip) esto es una primera y facilona aproximación a lo que quieres, que sería grabar los bloques de una cinta a disco de modo automático (un multicopión cinta a disco, digamos). con esto solo sabes los bloques que tiene la cinta y de qué tipo son, nada más. el tema de guardarlos de modo automático lo veo de cierta complejidad cof cof por los bloques en basic, fíjate, ya que no recuerdo si se pueden cargar desplazados y volver a guardarlos en su posiciones originales, etc. los bloques binarios tb habría que cargarlos siempre en un buffer ram, digamos, etc. hay otra cosa más, y es que el programa que pusiste (y que toquetéo) viene con el pequeño loader asm un poquitín subido de ram. no sé yo si en un msx real con disquetera ese mini programa podrá ir en &hf600 es que nunca tuve un msx real con disquetera :....) pero bueno, esto sería un poblema menor saludos, - paco http://www.vecindiario.es/phoenix/ftp/listarbloquescintas.zip
|
|
|
En línea
|
|
|
|
manolito74
|
|
« Respuesta #2 : 09 de Junio de 2013, 03:15:21 pm » |
|
Hola Paco:
Mil gracias por las mejoras-comentarios-correcciones. ;-)
Por cierto, ese listado que puse era un "módulo" de un Programa General:
Había un programa general que nos permitía cargar 3 tipos de "copiones":
- Copión cinta-cinta.
- Copión disco-disco.
- Copión cinta-disco.
Luego a ver si lo busco, copio todos los "módulos" y vemos si había algún fallo más o hay algo que se pudiera modificar-mejorar.
A ver si alguien nos puede informar si sería posible reubicar el "copión" en una zona que no moleste: ni al Basic ni a la Disquetera.
Gracias & Saludetes. ;-)
|
|
|
En línea
|
|
|
|
manolito74
|
|
« Respuesta #3 : 09 de Junio de 2013, 05:52:16 pm » |
|
Hola de nuevo:
Acabo de probar tu Programa con la modificación que le has hecho y es bueno, muy bueno. ;-)
Está muy bien la idea esa de generar las líneas REM y así poder grabar si queremos el listado de la Cinta. ;-)
Cuando pones el mensaje final de "Fin de la Cinta?" en realidad el "interrogante" sobra, ya que simplemente avisas que se llegó al final de la cinta (es que al leerlo asín rápido, sin fijarme en el Código pensé que el Programa te preguntaba si habías llegado al final de la cinta o si querías seguir leyendo. ;-)
Falta ahora por saber si sería factible ubicar el copión en una zona que no "moleste" y si se puede reubicar un Programa cargado en Basic y luego reubicarlo donde proceda para grabarlo de nuevo. ;-)
¡1000 Gracias!
|
|
|
En línea
|
|
|
|
manolito74
|
|
« Respuesta #4 : 09 de Junio de 2013, 05:56:45 pm » |
|
Por cierto, en otro Foro me comentan esto: Por si quieres trastear, con estos pokes modificas la dirección de memoria en la que quieres que se cargue/ejecute un programa en BASIC:
Ejemplo para la dirección &HD800 (te quedaría algo de hueco antes de pisar la zona de la disquetera):
POKE &HF676,&H00 POKE &HF677,&HD8 POKE &HD800,0 No sé si eso te puede dar una pista para lo de reubicar un Programa en Basic. Gracias & Saludetes. ;-)
|
|
|
En línea
|
|
|
|
phsoft
|
|
« Respuesta #5 : 12 de Junio de 2013, 10:39:15 pm » |
|
de nada, hombre el listado anterior tiene un pequeño fallo en la linea 410 (un olvido tonto). falta el mensaje para los tipos de bloque " .ukw" o de tipo desconocido, digamos, como serían los bloques "turbo" tipo gremlin, ya sabes. estos bloques pues no van a cargar de ninguna manera con las rutinas habituales del sistema creo que los programas basic se podían convertir en una rom con una herramienta (de jltursan?). de esta forma, quizá, un programa basic no molestaría para cargar cualquier cosa de 0x8000 hasta aprox 0xf000, supongo, lo que por otra parte es la zona de carga-y-descarga habitual de los bloques binarios y programas basic de msx. de todas maneras lo bonico sería prescindir del basic y hacer todo el programa anterior en asm, lo que parece bte sencillo, por cierto. de esta forma lo puedes poner en 0xe800, pej, y puedes cargar bloques binarios completos -no solo cabeceras- de gran tamaño, además de los juegos y programas basic en sus ubicaciones originales. luego solo habría que regrabar bloques binarios con sus cabeceras originales pero siempre se cargarían a partir de 0x8000 y hasta 0xe7ff. me pondría con esto, que parece tan divertido como totalmente inútil, sip, X...-D.. pero es que no recuerdo cómo se cargaba un bloque ascii o basic, sobre todo la parte de la detección del fin del fichero, qué cabecera en concreto tenían, etc por eso estaría bien que pudieras recuperar el megacopión que decías, manolo. sobre todo el listado asm que se incluía en el listado basic anterior, u otro códigos asm o basic similares de que dispongas. claro que lo anterior se puede desensamblar (ya lo hice ), pero si ya lo está y si tenemos más ejemplos, pues tanto mejor, no? saludos, - paco
|
|
|
En línea
|
|
|
|
manolito74
|
|
« Respuesta #6 : 12 de Junio de 2013, 10:58:48 pm » |
|
Hola:
Estuve probando tu Programa en un MSX real y tiene un pequeño fallo (que seguro que es una tontería de algún índice que usas para filas o columnas). El caso es que llega un momento que escribe el nombre del Programa que carga en una línea, el tipo otra línea más abajo y las direcciones otra línea más abajo con lo cual quedan todos los listados desordenados. :-(
Sip, lo suyo sería hacerlo todo en CM, así estaría libre más memoria para cargar-manejar Bloques, etc. A ver si saco tiempo y te cuelgo el "copión original completo".
Quizás también te resultaría interesante desensamblar-ver como gestiona la carga de Bloques algún "Copión" de la época, como el "Vecope" (no sé si te suena). Si lo necesitas lo tengo yo en disco. Éste era un Copión muy bueno y cómodo, el "Vecope" y bastante versatil.
En fin, tú pide que todo lo que esté en mis manos te lo facilito (incluso hay un artículo por ahí en una revista que trataba bastante en profundidad la Estructura de la Carga y los Programas en Cassette)
Luego a ver si lo que quede por pulir algún forero nos ilumina y hacemos el Mega-Copión refinitivo. ;-)
Saludetes. ;-)
|
|
|
En línea
|
|
|
|
phsoft
|
|
« Respuesta #7 : 18 de Junio de 2013, 07:53:27 pm » |
|
buenas, pichorrica el error que comentas supongo será por el salto de página. aquel programita no está preparado para mostrar más de 20 líneas (bloques en la cinta) de forma decente. que no es un chapucilla, nop... era por no complicarme! :-) lo suyo sería, como te dije, cargar y grabar bloques y listo. además en asm. pero bueno, prueba con este listado; no es que mejore mucho al anterior (para eso habría que almacenar los datos en memoria y presentarlos después.. una vacilada sería añadirlos como líneas basic al final de propio programa... yoquéseeee! :...-) 10 KEY OFF:SCREEN 0:WIDTH40 20 COLOR15,4,4 30 ON ERROR GOTO 620 40 CY=2:NL=899 50 U=&HF610:DEFUSR=U 60 FORI=UTOU+62 70 READK:POKEI,K 80 NEXT 90 REM ********************** 100 CLS 110 LOCATE4,0:PRINT"*** Listar bloques de caset ***" 120 LOCATE10,1:PRINT"(C)Phoenix Software" 130 LOCATE12,22:PRINT"pulsa una tecla" 140 A$=INKEY$:IFA$=""THEN140 150 LOCATE12,22:PRINT" " 160 REM ********************** 170 A=USR(0) 180 F$="":CY=CY+1:NL=NL+1 190 IFCY>21THENCY=2 200 B=&HF600 210 T=PEEK(B) 220 IF(T<>&HD0)AND(T<>&HD3)AND(T<>&HEA)THENGOTO 340 230 FORI=B+1TOB+6 240 F$=F$+CHR$(PEEK(I)) 250 NEXT 260 LOCATE0,CY:PRINT NL;"' ";F$ 270 IFT=&HD0THENGOTO 360 280 IFT=&HD3THENGOTO 320 290 REM ******************* 300 LOCATE 13,CY:PRINT" .sav" 310 GOTO 170 320 LOCATE 13,CY:PRINT" .csav" 330 GOTO 170 340 LOCATE 13,CY:PRINT" .???" 350 GOTO 170 360 LOCATE 13,CY:PRINT" .bsav" 370 S=PEEK(B+7)+PEEK(B+8)*256 380 E=PEEK(B+9)+PEEK(B+10)*256 390 X=PEEK(B+11)+PEEK(B+12)*256 400 LOCATE22,CY:PRINT HEX$(S) 410 LOCATE28,CY:PRINT HEX$(E) 420 LOCATE34,CY:PRINT HEX$(X) 430 GOTO 170 440 REM ******************** 450 DATA &H21,&H00,&HF6,&HE5 460 DATA &HCD,&HE1,&H00,&H38 470 DATA &H24,&HCD,&H47,&HF6 480 DATA &H4F,&H06,&H09,&HCD 490 DATA &H47,&HF6,&HB9,&H20 500 DATA &HEF,&H10,&HF8,&HE1 510 DATA &H71,&HCD,&H31,&HF6 520 DATA &HE5,&HCD,&HE1,&H00 530 DATA &HE1,&H06,&H06,&HCD 540 DATA &H47,&HF6,&H23,&H77 550 DATA &H10,&HF9,&HC3,&HE7 560 DATA &H00,&HCD,&HE7,&H00 570 DATA &HDD,&H21,&HB2,&H73 580 DATA &HC3,&H59,&H01,&HD9 590 DATA &HCD,&HE4,&H00,&H38 600 DATA &HF0,&HD9,&HC9 610 REM ******************* 620 LOCATE12,22:PRINT"Fin de la cinta?" respecto al asm, empecé un programita que parece funcionar con los bloques bsave y csave pero, curiosamente, aunque carga los bloques save el código no aparece "tokenizado" en el debugger, de forma que no puedes list(arlo).. y en fin.. que o algún fenómeno con ganas y tiempo nos echa un cable al cuello, efectiviwonder, o servidora ha llegado anta aquín! X...D CSAVE_FILE equ 0xD3 ; eof = n data hasta 7bytes 0x0 SAVE_FILE equ 0xEA ; eof = n bloques 256 bytes hasta CTRL+Z BSAVE_FILE equ 0xD0
INI_BASIC equ 0x8001 ; lol! INI_PRG equ 0xF000
; -------------------------------------- .bios .basic .org INI_PRG .start MAIN
MAIN: di xor a ; limpiando la casa ld hl, iniram ld bc, endram-iniram-1 call CLSRAM
call LHEADER ; leemos una cabecera
ret
; -------------------------------------- ; inicia o detiene el motor del cassette MOTORON: ld a, 1 bmotor: call STMOTR ret MOTOROFF: xor a jr bmotor
; -------------------------------------- ; salimos (por error de lectura) o paramos el cassete EXIT: pop hl STOP: call TAPIOF ret
; -------------------------------------- ; leemos datos (un byte) del cassete; C si se produce un error READ: exx call TAPIN jr c, EXIT exx ret
; -------------------------------------- ; leemos la cabecera larga del cassete; tipo = 10 bytes + nombre = 6 bytes LHEADER: call TAPION jr c, EXIT
ld b, 10 ; 10 bytes ld hl, tipo_fichero bucH: call READ ld [hl], a djnz bucH
ld b, 6 ; 6 bytes ld hl, nom_fichero bucN: call READ ld [hl], a inc hl djnz bucN call STOP ld a, [tipo_fichero] ; tipo de fichero
cp BSAVE_FILE jp z, BLOAD ; cargamos binario
cp SAVE_FILE jp z, LOAD ; cargamos basic SAVE cp CSAVE_FILE jp z, CLOAD ; cargamos basic CSAVE
; TODO: fichero desconocido
; TODO: presentar informacion ; TODO: grabar fichero a disco
ret
; -------------------------------------- ; cload tiene una cabecera corta que leemos con TAPION y luego ; los datos hasta encontrar 7 ceros seguidos CLOAD: call rstzeros xor a ld [INI_BASIC-1], a ; 0 en 0x8000; requerido
ld hl, INI_BASIC push hl call TAPION pop hl jr c, EXIT
bcld: call READ ld [hl], a inc hl cp 0 call nz, rstzeros call z, inczeros ld a, [temp1] cp 7 ; termina con 7 ceros jr nz, bcld
jr STOP
rstzeros: xor a ld [temp1], a ret
inczeros: ld a, [temp1] inc a ld [temp1], a ret
; -------------------------------------- ; load contiene multiples bloques de 256 bytes hasta 0x1a (ctrl+z) ; cada bloque tiene su cabecera corta que leemos con TAPION LOAD: xor a ld [INI_BASIC-1], a ; 0 en 0x8000; requerido
ld hl, INI_BASIC
bld1: push hl call TAPION pop hl jp c, EXIT
ld b, 0 ; carga bloques de 256 bytes bld2: call READ cp 0x1a ; ctrl + z jp z, STOP ld [hl], a inc hl djnz bld2 ; fin de bloque push hl call TAPIOF pop hl jr bld1
; -------------------------------------- ; bload tiene una cabecera corta seguida de 6 bytes con ; las direcciones de inicio, fin y ejecución del programa ; a continuación va el bloque de datos, todo seguido BLOAD: xor a ld hl, inifile ld bc, finfile-inifile-1 call CLSRAM ; borra dirs fichero call TAPION jp c, EXIT ld b, 6 ; 6 bytes ld hl, inifile bblh: call READ ld [hl], a inc hl djnz bblh call MOTOROFF call calclng ; calculamos longitud push hl call MOTORON pop bc ; longitud ld hl,INI_BASIC ; inicio (temporal)
bbld: call READ ld [hl], a inc hl dec bc ld a, b or c jr nz, bbld
jp STOP
calclng: ld ix,inifile ld e, [ix+0] ld d, [ix+1] ; de = ini (real) ld l, [ix+2] ld h, [ix+3] ; hl = fin (real) sbc hl, de ; longitud = fin - ini ret ; ------------------------------------- ; rellenamos bc+1 bytes de ram con el valor de A CLSRAM: ld [hl], a ld d, h ld e, l inc de ldir ret
; -------------------------------------- iniram: defb 0
tipo_fichero: defs 1 nom_fichero: defs 6
inifile: defs 2 finfile: defs 2 exefile: defs 2
temp1: defs 1
endram: defb 0 saludos, - paco
|
|
|
En línea
|
|
|
|
manolito74
|
|
« Respuesta #8 : 18 de Junio de 2013, 10:36:24 pm » |
|
Hola de nuevo: Te lo había prometido pero se me había olvidado... Aquí te dejo el "Copión" original. El Fichero ".bas" sería el "Programa Principal" y los Ficheros ".Opc" serían los diferentes Copiones: Cinta-Disco, Disco-Cinta, Cinta-Cinta. También te dejo el artículo que te había comentado que apareció en la la "Msx-Club" número 49, sobre el "Cassette". Lo tienes todo en este enlace: http://www.mediafire.com/?pn8m2m8v6jsmh6aGracias & Saludetes. ;-)
|
|
|
En línea
|
|
|
|
manolito74
|
|
« Respuesta #9 : 27 de Diciembre de 2013, 01:02:36 am » |
|
Up XD
|
|
|
En línea
|
|
|
|
manolito74
|
|
« Respuesta #10 : 06 de Abril de 2014, 08:46:01 pm » |
|
Hola: Me acabo de acordar de este Post y pongo aquí el Listado del "Copión Vecope" desensamblado, por si aporta alguna Info. Gracias & Saludetes. ;-) RSC II MSX 1.0
55296 DBA8 IN A,(168)
55298 E6F0 AND 240
55300 47 LD B,A
55301 0F RRCA
55302 0F RRCA
55303 B0 OR B
55304 D3A8 OUT (168),A
55306 AF XOR A
55307 CDC300 CALL 195
55310 CD95D9 CALL 55701
55313 C0 RET NZ
55314 DCC2DB CALL C,56258
55317 2020 JR NZ,+32 (55351)
55319 47 LD B,A
55320 4F LD C,A
55321 4C LD C,H
55322 44 LD B,H
55323 46 LD B,(HL)
55324 49 LD C,C
55325 4E LD C,(HL)
55326 47 LD B,A
55327 45 LD B,L
55328 52 LD D,D
55329 2020 JR NZ,+32 (55363)
55331 53 LD D,E
55332 4F LD C,A
55333 46 LD B,(HL)
55334 54 LD D,H
55335 57 LD D,A
55336 41 LD B,C
55337 52 LD D,D
55338 45 LD B,L
55339 2031 JR NZ,+49 (55390)
55341 39 ADD HL,SP
55342 3836 JR C,+54 (55398)
55344 20DB JR NZ,-37 (55309)
55346 C2DCC0 JP NZ,49372
55349 0D DEC C
55350 0A LD A,(BC)
55351 0A LD A,(BC)
55352 2020 JR NZ,+32 (55386)
55354 42 LD B,D
55355 205F JR NZ,+95 (55452)
55357 2052 JR NZ,+82 (55441)
55359 45 LD B,L
55360 41 LD B,C
55361 44 LD B,H
55362 2020 JR NZ,+32 (55396)
55364 42 LD B,D
55365 49 LD C,C
55366 4E LD C,(HL)
55367 2E20 LD L,32
55369 2020 JR NZ,+32 (55403)
55371 2044 JR NZ,+68 (55441)
55373 205F JR NZ,+95 (55470)
55375 2052 JR NZ,+82 (55459)
55377 45 LD B,L
55378 41 LD B,C
55379 44 LD B,H
55380 2020 JR NZ,+32 (55414)
55382 44 LD B,H
55383 41 LD B,C
55384 54 LD D,H
55385 41 LD B,C
55386 0D DEC C
55387 0A LD A,(BC)
55388 0A LD A,(BC)
55389 2020 JR NZ,+32 (55423)
55391 57 LD D,A
55392 205F JR NZ,+95 (55489)
55394 2057 JR NZ,+87 (55483)
55396 52 LD D,D
55397 49 LD C,C
55398 54 LD D,H
55399 45 LD B,L
55400 2054 JR NZ,+84 (55486)
55402 41 LD B,C
55403 50 LD D,B
55404 45 LD B,L
55405 2020 JR NZ,+32 (55439)
55407 2020 JR NZ,+32 (55441)
55409 52 LD D,D
55410 202D JR NZ,+45 (55457)
55412 2052 JR NZ,+82 (55496)
55414 45 LD B,L
55415 53 LD D,E
55416 45 LD B,L
55417 54 LD D,H
55418 0D DEC C
55419 0A LD A,(BC)
55420 0A LD A,(BC)
55421 2020 JR NZ,+32 (55455)
55423 31205F LD SP,24352
55426 2031 JR NZ,+49 (55477)
55428 323030 LD (12336),A
55431 2020 JR NZ,+32 (55465)
55433 42 LD B,D
55434 41 LD B,C
55435 55 LD D,L
55436 44 LD B,H
55437 2020 JR NZ,+32 (55471)
55439 2020 JR NZ,+32 (55473)
55441 32205F LD (24352),A
55444 2032 JR NZ,+50 (55496)
55446 34 INC (HL)
55447 3030 JR NC,+48 (55497)
55449 2020 JR NZ,+32 (55483)
55451 42 LD B,D
55452 41 LD B,C
55453 55 LD D,L
55454 44 LD B,H
55455 0D DEC C
55456 0A LD A,(BC)
55457 0A LD A,(BC)
55458 C3DFC5 JP 50655
55461 DBDB IN A,(219)
55463 DBDB IN A,(219)
55465 DBDB IN A,(219)
55467 DBDB IN A,(219)
55469 DBDB IN A,(219)
55471 DBDB IN A,(219)
55473 DBDB IN A,(219)
55475 DBDB IN A,(219)
55477 DBDB IN A,(219)
55479 DBDB IN A,(219)
55481 DBDB IN A,(219)
55483 DBDB IN A,(219)
55485 DBDB IN A,(219)
55487 DBDB IN A,(219)
55489 DBDB IN A,(219)
55491 C5 PUSH BC
55492 DF RST &H18
55493 C30D0A JP 2573
55496 00 NOP
55497 CD6ADA CALL 55914
55500 CD06DA CALL 55814
55503 CD1FDA CALL 55839
55506 CD38DA CALL 55864
55509 CD51DA CALL 55889
55512 DD21D2D9 LD IX,55762
55516 110FDA LD DE,55823
55519 210040 LD HL,16384
55522 3AD2D9 LD A,(55762)
55525 FE00 CP 0
55527 2832 JR Z,+50 (55579)
55529 DD21DED9 LD IX,55774
55533 ED4BD6D9 LD BC,(55766)
55537 1128DA LD DE,55848
55540 09 ADD HL,BC
55541 3ADED9 LD A,(55774)
55544 FE00 CP 0
55546 281F JR Z,+31 (55579)
55548 DD21EAD9 LD IX,55786
55552 ED4BE2D9 LD BC,(55778)
55556 1141DA LD DE,55873
55559 09 ADD HL,BC
55560 3AEAD9 LD A,(55786)
55563 FE00 CP 0
55565 280C JR Z,+12 (55579)
55567 DD21F6D9 LD IX,55798
55571 ED4BEED9 LD BC,(55790)
55575 115ADA LD DE,55898
55578 09 ADD HL,BC
55579 ED5302DA LD (55810),DE
55583 CD95D9 CALL 55701
55586 0A LD A,(BC)
55587 C0 RET NZ
55588 C0 RET NZ
55589 C0 RET NZ
55590 C0 RET NZ
55591 C0 RET NZ
55592 C0 RET NZ
55593 C0 RET NZ
55594 C0 RET NZ
55595 C0 RET NZ
55596 C0 RET NZ
55597 C0 RET NZ
55598 C0 RET NZ
55599 C0 RET NZ
55600 C0 RET NZ
55601 C0 RET NZ
55602 C0 RET NZ
55603 C0 RET NZ
55604 C0 RET NZ
55605 C0 RET NZ
55606 C0 RET NZ
55607 C0 RET NZ
55608 C0 RET NZ
55609 C0 RET NZ
55610 C0 RET NZ
55611 C0 RET NZ
55612 C0 RET NZ
55613 C0 RET NZ
55614 C0 RET NZ
55615 C0 RET NZ
55616 C0 RET NZ
55617 C0 RET NZ
55618 C0 RET NZ
55619 C0 RET NZ
55620 C0 RET NZ
55621 C0 RET NZ
55622 C0 RET NZ
55623 00 NOP
55624 E5 PUSH HL
55625 211301 LD HL,275
55628 CDC600 CALL 198
55631 CD95D9 CALL 55701
55634 49 LD C,C
55635 4E LD C,(HL)
55636 50 LD D,B
55637 55 LD D,L
55638 54 LD D,H
55639 2020 JR NZ,+32 (55673)
55641 2020 JR NZ,+32 (55675)
55643 2020 JR NZ,+32 (55677)
55645 3A2020 LD A,(8224)
55648 08 EX AF,AF'
55649 00 NOP
55650 E1 POP HL
55651 CDE3DA CALL 56035
55654 CDD7DA CALL 56023
55657 FE31 CP 49
55659 CA99DA JP Z,55961
55662 FE32 CP 50
55664 CAB8DA JP Z,55992
55667 F660 OR 96
55669 FE77 CP 119
55671 CAF7DB JP Z,56311
55674 FE72 CP 114
55676 2827 JR Z,+39 (55717)
55678 FE7A CP 122
55680 CA00A0 JP Z,40960
55683 FE62 CP 98
55685 CAC9DB JP Z,56265
55688 FE64 CP 100
55690 CA7DDB JP Z,56189
55693 3EFF LD A,255
55695 CDF300 CALL 243
55698 C348D9 JP 55624
55701 E3 EX (SP),HL
55702 F5 PUSH AF
55703 7E LD A,(HL)
55704 B7 OR A
55705 2806 JR Z,+6 (55713)
55707 CDD7DA CALL 56023
55710 23 INC HL
55711 18F6 JR -10 (55703)
55713 23 INC HL
55714 F1 POP AF
55715 E3 EX (SP),HL
55716 C9 RET
55717 21D2D9 LD HL,55762
55720 0630 LD B,48
55722 3600 LD (HL),0
55724 23 INC HL
55725 10FB DJNZ -5 (55722)
55727 210FDA LD HL,55823
55730 CDCAD9 CALL 55754
55733 2128DA LD HL,55848
55736 CDCAD9 CALL 55754
55739 2141DA LD HL,55873
55742 CDCAD9 CALL 55754
55745 215ADA LD HL,55898
55748 CDCAD9 CALL 55754
55751 C3C9D8 JP 55497
55754 0606 LD B,6
55756 3620 LD (HL),32
55758 23 INC HL
55759 10FB DJNZ -5 (55756)
55761 C9 RET
55762 00 NOP
55763 00 NOP
55764 00 NOP
55765 00 NOP
55766 00 NOP
55767 00 NOP
55768 00 NOP
55769 00 NOP
55770 00 NOP
55771 00 NOP
55772 00 NOP
55773 00 NOP
55774 00 NOP
55775 00 NOP
55776 00 NOP
55777 00 NOP
55778 00 NOP
55779 00 NOP
55780 00 NOP
55781 00 NOP
55782 00 NOP
55783 00 NOP
55784 00 NOP
55785 00 NOP
55786 00 NOP
55787 00 NOP
55788 00 NOP
55789 00 NOP
55790 00 NOP
55791 00 NOP
55792 00 NOP
55793 00 NOP
55794 00 NOP
55795 00 NOP
55796 00 NOP
55797 00 NOP
55798 00 NOP
55799 00 NOP
55800 00 NOP
55801 00 NOP
55802 00 NOP
55803 00 NOP
55804 00 NOP
55805 00 NOP
55806 00 NOP
55807 00 NOP
55808 00 NOP
55809 00 NOP
55810 00 NOP
55811 00 NOP
55812 00 NOP
55813 00 NOP
55814 210C01 LD HL,268
55817 CDC600 CALL 198
55820 CD95D9 CALL 55701
55823 2020 JR NZ,+32 (55857)
55825 2020 JR NZ,+32 (55859)
55827 2020 JR NZ,+32 (55861)
55829 2020 JR NZ,+32 (55863)
55831 00 NOP
55832 21D6D9 LD HL,55766
55835 CDEDDA CALL 56045
55838 C9 RET
55839 210D01 LD HL,269
55842 CDC600 CALL 198
55845 CD95D9 CALL 55701
55848 2020 JR NZ,+32 (55882)
55850 2020 JR NZ,+32 (55884)
55852 2020 JR NZ,+32 (55886)
55854 2020 JR NZ,+32 (55888)
55856 00 NOP
55857 21E2D9 LD HL,55778
55860 CDEDDA CALL 56045
55863 C9 RET
55864 210E01 LD HL,270
55867 CDC600 CALL 198
55870 CD95D9 CALL 55701
55873 2020 JR NZ,+32 (55907)
55875 2020 JR NZ,+32 (55909)
55877 2020 JR NZ,+32 (55911)
55879 2020 JR NZ,+32 (55913)
55881 00 NOP
55882 21EED9 LD HL,55790
55885 CDEDDA CALL 56045
55888 C9 RET
55889 210F01 LD HL,271
55892 CDC600 CALL 198
55895 CD95D9 CALL 55701
55898 2020 JR NZ,+32 (55932)
55900 2020 JR NZ,+32 (55934)
55902 2020 JR NZ,+32 (55936)
55904 2020 JR NZ,+32 (55938)
55906 00 NOP
55907 21FAD9 LD HL,55802
55910 CDEDDA CALL 56045
55913 C9 RET
55914 21090C LD HL,3081
55917 CDC600 CALL 198
55920 3A06F4 LD A,(62470)
55923 FE25 CP 37
55925 2811 JR Z,+17 (55944)
55927 CD95D9 CALL 55701
55930 3C INC A
55931 313230 LD SP,12338
55934 303E JR NC,+62 (55998)
55936 2020 JR NZ,+32 (55970)
55938 42 LD B,D
55939 41 LD B,C
55940 55 LD D,L
55941 44 LD B,H
55942 00 NOP
55943 C9 RET
55944 CD95D9 CALL 55701
55947 3C INC A
55948 323430 LD (12340),A
55951 303E JR NC,+62 (56015)
55953 2020 JR NZ,+32 (55987)
55955 42 LD B,D
55956 41 LD B,C
55957 55 LD D,L
55958 44 LD B,H
55959 00 NOP
55960 C9 RET
55961 3E53 LD A,83
55963 3206F4 LD (62470),A
55966 3E5C LD A,92
55968 3207F4 LD (62471),A
55971 3E26 LD A,38
55973 3208F4 LD (62472),A
55976 3E2D LD A,45
55978 3209F4 LD (62473),A
55981 3E0F LD A,15
55983 320AF4 LD (62474),A
55986 CD6ADA CALL 55914
55989 C3C9D8 JP 55497
55992 3E25 LD A,37
55994 3206F4 LD (62470),A
55997 3E2D LD A,45
55999 3207F4 LD (62471),A
56002 3E0E LD A,14
56004 3208F4 LD (62472),A
56007 3E16 LD A,22
56009 3209F4 LD (62473),A
56012 3E1F LD A,31
56014 320AF4 LD (62474),A
56017 CD6ADA CALL 55914
56020 C3C9D8 JP 55497
56023 F5 PUSH AF
56024 C5 PUSH BC
56025 D5 PUSH DE
56026 E5 PUSH HL
56027 CDA200 CALL 162
56030 E1 POP HL
56031 D1 POP DE
56032 C1 POP BC
56033 F1 POP AF
56034 C9 RET
56035 C5 PUSH BC
56036 D5 PUSH DE
56037 E5 PUSH HL
56038 CD9F00 CALL 159
56041 E1 POP HL
56042 D1 POP DE
56043 C1 POP BC
56044 C9 RET
56045 23 INC HL
56046 7E LD A,(HL)
56047 CD3ADB CALL 56122
56050 2B DEC HL
56051 7E LD A,(HL)
56052 CD3ADB CALL 56122
56055 3E20 LD A,32
56057 CDD7DA CALL 56023
56060 3E20 LD A,32
56062 CDD7DA CALL 56023
56065 23 INC HL
56066 23 INC HL
56067 23 INC HL
56068 7E LD A,(HL)
56069 CD3ADB CALL 56122
56072 2B DEC HL
56073 7E LD A,(HL)
56074 CD3ADB CALL 56122
56077 3E2D LD A,45
56079 CDD7DA CALL 56023
56082 23 INC HL
56083 23 INC HL
56084 23 INC HL
56085 7E LD A,(HL)
56086 CD3ADB CALL 56122
56089 2B DEC HL
56090 7E LD A,(HL)
56091 CD3ADB CALL 56122
56094 3E2D LD A,45
56096 CDD7DA CALL 56023
56099 23 INC HL
56100 23 INC HL
56101 23 INC HL
56102 7E LD A,(HL)
56103 CD3ADB CALL 56122
56106 2B DEC HL
56107 7E LD A,(HL)
56108 CD3ADB CALL 56122
56111 3E0D LD A,13
56113 CDD7DA CALL 56023
56116 3E0A LD A,10
56118 CDD7DA CALL 56023
56121 C9 RET
56122 F5 PUSH AF
56123 0F RRCA
56124 0F RRCA
56125 0F RRCA
56126 0F RRCA
56127 E60F AND 15
56129 CD45DB CALL 56133
56132 F1 POP AF
56133 F5 PUSH AF
56134 E60F AND 15
56136 F630 OR 48
56138 FE3A CP 58
56140 3802 JR C,+2 (56144)
56142 C607 ADD A,7
56144 CDD7DA CALL 56023
56147 F1 POP AF
56148 C9 RET
56149 E5 PUSH HL
56150 D5 PUSH DE
56151 C5 PUSH BC
56152 CDE400 CALL 228
56155 C1 POP BC
56156 D1 POP DE
56157 E1 POP HL
56158 C9 RET
56159 E5 PUSH HL
56160 D5 PUSH DE
56161 C5 PUSH BC
56162 CDED00 CALL 237
56165 C1 POP BC
56166 D1 POP DE
56167 E1 POP HL
56168 C9 RET
56169 E5 PUSH HL
56170 D5 PUSH DE
56171 C5 PUSH BC
56172 CDE100 CALL 225
56175 C1 POP BC
56176 D1 POP DE
56177 E1 POP HL
56178 C9 RET
56179 E5 PUSH HL
56180 D5 PUSH DE
56181 C5 PUSH BC
56182 CD3DDD CALL 56637
56185 C1 POP BC
56186 D1 POP DE
56187 E1 POP HL
56188 C9 RET
56189 E5 PUSH HL
56190 CDE100 CALL 225
56193 E1 POP HL
56194 DD7502 LD (IX+2),L
56197 DD7403 LD (IX+3),H
56200 010000 LD BC,0
56203 CD55DB CALL 56149
56206 380D JR C,+13 (56221)
56208 77 LD (HL),A
56209 23 INC HL
56210 03 INC BC
56211 CD73DB CALL 56179
56214 3805 JR C,+5 (56221)
56216 77 LD (HL),A
56217 23 INC HL
56218 03 INC BC
56219 18F6 JR -10 (56211)
56221 DD7104 LD (IX+4),C
56224 DD7005 LD (IX+5),B
56227 CDE700 CALL 231
56230 DD360001 LD (IX+0),1
56234 E5 PUSH HL
56235 2A02DA LD HL,(55810)
56238 3E3C LD A,60
56240 77 LD (HL),A
56241 23 INC HL
56242 3E44 LD A,68
56244 77 LD (HL),A
56245 23 INC HL
56246 3E41 LD A,65
56248 77 LD (HL),A
56249 23 INC HL
56250 3E54 LD A,84
56252 77 LD (HL),A
56253 23 INC HL
56254 3E41 LD A,65
56256 77 LD (HL),A
56257 23 INC HL
56258 3E3E LD A,62
56260 77 LD (HL),A
56261 E1 POP HL
56262 C3C9D8 JP 55497
56265 E5 PUSH HL
56266 CD8FDC CALL 56463
56269 CD06DA CALL 55814
56272 CD1FDA CALL 55839
56275 CD38DA CALL 55864
56278 CD51DA CALL 55889
56281 CDCFDC CALL 56527
56284 E1 POP HL
56285 DD7502 LD (IX+2),L
56288 DD7403 LD (IX+3),H
56291 CD55DB CALL 56149
56294 77 LD (HL),A
56295 23 INC HL
56296 0B DEC BC
56297 78 LD A,B
56298 B1 OR C
56299 20F6 JR NZ,-10 (56291)
56301 CDE700 CALL 231
56304 DD360002 LD (IX+0),2
56308 C3C9D8 JP 55497
56311 210040 LD HL,16384
56314 DD21D2D9 LD IX,55762
56318 110FDA LD DE,55823
56321 ED5302DA LD (55810),DE
56325 CD35DC CALL 56373
56328 DD21DED9 LD IX,55774
56332 1128DA LD DE,55848
56335 ED5302DA LD (55810),DE
56339 CD35DC CALL 56373
56342 DD21EAD9 LD IX,55786
56346 1141DA LD DE,55873
56349 ED5302DA LD (55810),DE
56353 CD35DC CALL 56373
56356 DD21F6D9 LD IX,55798
56360 115ADA LD DE,55898
56363 ED5302DA LD (55810),DE
56367 CD35DC CALL 56373
56370 C3C9D8 JP 55497
56373 DD7E00 LD A,(IX+0)
56376 FE00 CP 0
56378 C8 RET Z
56379 FE01 CP 1
56381 CC49DC CALL Z,56393
56384 DD7E00 LD A,(IX+0)
56387 FE02 CP 2
56389 CC6ADC CALL Z,56426
56392 C9 RET
56393 E5 PUSH HL
56394 CD2DDD CALL 56621
56397 AF XOR A
56398 CDEA00 CALL 234
56401 DD4E04 LD C,(IX+4)
56404 DD4605 LD B,(IX+5)
56407 E1 POP HL
56408 79 LD A,C
56409 B0 OR B
56410 2808 JR Z,+8 (56420)
56412 7E LD A,(HL)
56413 CD5FDB CALL 56159
56416 23 INC HL
56417 0B DEC BC
56418 18F4 JR -12 (56408)
56420 E5 PUSH HL
56421 CDE700 CALL 231
56424 E1 POP HL
56425 C9 RET
56426 E5 PUSH HL
56427 CD2DDD CALL 56621
56430 CDAEDC CALL 56494
56433 CD2DDD CALL 56621
56436 AF XOR A
56437 CDEA00 CALL 234
56440 CD08DD CALL 56584
56443 E1 POP HL
56444 DD4E04 LD C,(IX+4)
56447 DD4605 LD B,(IX+5)
56450 79 LD A,C
56451 B0 OR B
56452 CA64DC JP Z,56420
56455 7E LD A,(HL)
56456 CD5FDB CALL 56159
56459 23 INC HL
56460 0B DEC BC
56461 30F3 JR NC,-13 (56450)
56463 0ED0 LD C,208
56465 CD69DB CALL 56169
56468 060A LD B,10
56470 CD55DB CALL 56149
56473 B9 CP C
56474 20F5 JR NZ,-11 (56465)
56476 10F8 DJNZ -8 (56470)
56478 2A02DA LD HL,(55810)
56481 0606 LD B,6
56483 CD55DB CALL 56149
56486 77 LD (HL),A
56487 23 INC HL
56488 10F9 DJNZ -7 (56483)
56490 CDE700 CALL 231
56493 C9 RET
56494 3EFF LD A,255
56496 CDEA00 CALL 234
56499 060A LD B,10
56501 3ED0 LD A,208
56503 C5 PUSH BC
56504 CDED00 CALL 237
56507 C1 POP BC
56508 10F7 DJNZ -9 (56501)
56510 2A02DA LD HL,(55810)
56513 0606 LD B,6
56515 E5 PUSH HL
56516 C5 PUSH BC
56517 7E LD A,(HL)
56518 CDED00 CALL 237
56521 C1 POP BC
56522 E1 POP HL
56523 23 INC HL
56524 10F5 DJNZ -11 (56515)
56526 C9 RET
56527 CDE100 CALL 225
56530 CD55DB CALL 56149
56533 5F LD E,A
56534 CD55DB CALL 56149
56537 57 LD D,A
56538 DD7306 LD (IX+6),E
56541 DD7207 LD (IX+7),D
56544 CD55DB CALL 56149
56547 6F LD L,A
56548 CD55DB CALL 56149
56551 67 LD H,A
56552 DD7508 LD (IX+8),L
56555 DD7409 LD (IX+9),H
56558 ED52 SBC HL,DE
56560 23 INC HL
56561 E5 PUSH HL
56562 C1 POP BC
56563 CD55DB CALL 56149
56566 5F LD E,A
56567 CD55DB CALL 56149
56570 57 LD D,A
56571 DD730A LD (IX+10),E
56574 DD720B LD (IX+11),D
56577 DD7104 LD (IX+4),C
56580 DD7005 LD (IX+5),B
56583 C9 RET
56584 DD7E06 LD A,(IX+6)
56587 CD5FDB CALL 56159
56590 DD7E07 LD A,(IX+7)
56593 CD5FDB CALL 56159
56596 DD7E08 LD A,(IX+8)
56599 CD5FDB CALL 56159
56602 DD7E09 LD A,(IX+9)
56605 CD5FDB CALL 56159
56608 DD7E0A LD A,(IX+10)
56611 CD5FDB CALL 56159
56614 DD7E0B LD A,(IX+11)
56617 CD5FDB CALL 56159
56620 C9 RET
56621 C5 PUSH BC
56622 3E01 LD A,1
56624 CDF300 CALL 243
56627 010000 LD BC,0
56630 0B DEC BC
56631 78 LD A,B
56632 B1 OR C
|
|
|
En línea
|
|
|
|
manolito74
|
|
« Respuesta #11 : 30 de Junio de 2014, 02:33:10 am » |
|
Up!
|
|
|
En línea
|
|
|
|
manolito74
|
|
« Respuesta #12 : 30 de Junio de 2014, 01:22:04 pm » |
|
Hola de nuevo:
He probado tu última revisión del Listado BASIC y funciona perfectamente, pagina todo bien, etc. ¡Gracias!
En cuanto al Listado ASM lo he copiado y ensamblado con el AsMSX y lo he ejecutado tanto en MSX real como en Emulador y NO HACE NADA. Lo único que obtengo es que cuando encuentra una cabecera el Programa se detiene (deja de ejecutarse) y no muestra ningún mensaje en Pantalla. :-(
Gracias & Saludetes. ;-)
|
|
|
En línea
|
|
|
|
manolito74
|
|
« Respuesta #13 : 30 de Junio de 2014, 01:35:28 pm » |
|
Hola: Pongo aquí el Código del Copión " VECOPE" desensamblado, en Formato Hexadecimal, por si pueden resultar de Utilidad las Rutinas de Lectura del Cassette que utiliza. Como el Código es muy largo lo pongo en dos Partes. Listado Desensamblado Copión "VECOPE" (Parte 1/2)Desensamblador RSC MANHATTAN TRANSFER
D800 DBA8 IN A,(&HA8) D802 E6F0 AND &HF0 D804 47 LD B,A D805 0F RRCA D806 0F RRCA D807 B0 OR B D808 D3A8 OUT (&HA8),A D80A AF XOR A D80B CDC300 CALL &HC3 D80E CD95D9 CALL &HD995 D811 C0 RET NZ D812 DCC2DB CALL C,&HDBC2 D815 2020 JR NZ,+&H20 (&HD837) D817 47 LD B,A D818 4F LD C,A D819 4C LD C,H D81A 44 LD B,H D81B 46 LD B,(HL) D81C 49 LD C,C D81D 4E LD C,(HL) D81E 47 LD B,A D81F 45 LD B,L D820 52 LD D,D D821 2020 JR NZ,+&H20 (&HD843) D823 53 LD D,E D824 4F LD C,A D825 46 LD B,(HL) D826 54 LD D,H D827 57 LD D,A D828 41 LD B,C D829 52 LD D,D D82A 45 LD B,L D82B 2031 JR NZ,+&H31 (&HD85E) D82D 39 ADD HL,SP D82E 3836 JR C,+&H36 (&HD866) D830 20DB JR NZ,-&H25 (&HD80D) D832 C2DCC0 JP NZ,&HC0DC D835 0D DEC C D836 0A LD A,(BC) D837 0A LD A,(BC) D838 2020 JR NZ,+&H20 (&HD85A) D83A 42 LD B,D D83B 205F JR NZ,+&H5F (&HD89C) D83D 2052 JR NZ,+&H52 (&HD891) D83F 45 LD B,L D840 41 LD B,C D841 44 LD B,H D842 2020 JR NZ,+&H20 (&HD864) D844 42 LD B,D D845 49 LD C,C D846 4E LD C,(HL) D847 2E20 LD L,&H20 D849 2020 JR NZ,+&H20 (&HD86B) D84B 2044 JR NZ,+&H44 (&HD891) D84D 205F JR NZ,+&H5F (&HD8AE) D84F 2052 JR NZ,+&H52 (&HD8A3) D851 45 LD B,L D852 41 LD B,C D853 44 LD B,H D854 2020 JR NZ,+&H20 (&HD876) D856 44 LD B,H D857 41 LD B,C D858 54 LD D,H D859 41 LD B,C D85A 0D DEC C D85B 0A LD A,(BC) D85C 0A LD A,(BC) D85D 2020 JR NZ,+&H20 (&HD87F) D85F 57 LD D,A D860 205F JR NZ,+&H5F (&HD8C1) D862 2057 JR NZ,+&H57 (&HD8BB) D864 52 LD D,D D865 49 LD C,C D866 54 LD D,H D867 45 LD B,L D868 2054 JR NZ,+&H54 (&HD8BE) D86A 41 LD B,C D86B 50 LD D,B D86C 45 LD B,L D86D 2020 JR NZ,+&H20 (&HD88F) D86F 2020 JR NZ,+&H20 (&HD891) D871 52 LD D,D D872 202D JR NZ,+&H2D (&HD8A1) D874 2052 JR NZ,+&H52 (&HD8C8) D876 45 LD B,L D877 53 LD D,E D878 45 LD B,L D879 54 LD D,H D87A 0D DEC C D87B 0A LD A,(BC) D87C 0A LD A,(BC) D87D 2020 JR NZ,+&H20 (&HD89F) D87F 31205F LD SP,&H5F20 D882 2031 JR NZ,+&H31 (&HD8B5) D884 323030 LD (&H3030),A D887 2020 JR NZ,+&H20 (&HD8A9) D889 42 LD B,D D88A 41 LD B,C D88B 55 LD D,L D88C 44 LD B,H D88D 2020 JR NZ,+&H20 (&HD8AF) D88F 2020 JR NZ,+&H20 (&HD8B1) D891 32205F LD (&H5F20),A D894 2032 JR NZ,+&H32 (&HD8C8) D896 34 INC (HL) D897 3030 JR NC,+&H30 (&HD8C9) D899 2020 JR NZ,+&H20 (&HD8BB) D89B 42 LD B,D D89C 41 LD B,C D89D 55 LD D,L D89E 44 LD B,H D89F 0D DEC C D8A0 0A LD A,(BC) D8A1 0A LD A,(BC) D8A2 C3DFC5 JP &HC5DF D8A5 DBDB IN A,(&HDB) D8A7 DBDB IN A,(&HDB) D8A9 DBDB IN A,(&HDB) D8AB DBDB IN A,(&HDB) D8AD DBDB IN A,(&HDB) D8AF DBDB IN A,(&HDB) D8B1 DBDB IN A,(&HDB) D8B3 DBDB IN A,(&HDB) D8B5 DBDB IN A,(&HDB) D8B7 DBDB IN A,(&HDB) D8B9 DBDB IN A,(&HDB) D8BB DBDB IN A,(&HDB) D8BD DBDB IN A,(&HDB) D8BF DBDB IN A,(&HDB) D8C1 DBDB IN A,(&HDB) D8C3 C5 PUSH BC D8C4 DF RST &H18 D8C5 C30D0A JP &HA0D D8C8 00 NOP D8C9 CD6ADA CALL &HDA6A D8CC CD06DA CALL &HDA06 D8CF CD1FDA CALL &HDA1F D8D2 CD38DA CALL &HDA38 D8D5 CD51DA CALL &HDA51 D8D8 DD21D2D9 LD IX,&HD9D2 D8DC 110FDA LD DE,&HDA0F D8DF 210040 LD HL,&H4000 D8E2 3AD2D9 LD A,(&HD9D2) D8E5 FE00 CP &H0 D8E7 2832 JR Z,+&H32 (&HD91B) D8E9 DD21DED9 LD IX,&HD9DE D8ED ED4BD6D9 LD BC,(&HD9D6) D8F1 1128DA LD DE,&HDA28 D8F4 09 ADD HL,BC D8F5 3ADED9 LD A,(&HD9DE) D8F8 FE00 CP &H0 D8FA 281F JR Z,+&H1F (&HD91B) D8FC DD21EAD9 LD IX,&HD9EA D900 ED4BE2D9 LD BC,(&HD9E2) D904 1141DA LD DE,&HDA41 D907 09 ADD HL,BC D908 3AEAD9 LD A,(&HD9EA) D90B FE00 CP &H0 D90D 280C JR Z,+&HC (&HD91B) D90F DD21F6D9 LD IX,&HD9F6 D913 ED4BEED9 LD BC,(&HD9EE) D917 115ADA LD DE,&HDA5A D91A 09 ADD HL,BC D91B ED5302DA LD (&HDA02),DE D91F CD95D9 CALL &HD995 D922 0A LD A,(BC) D923 C0 RET NZ D924 C0 RET NZ D925 C0 RET NZ D926 C0 RET NZ D927 C0 RET NZ D928 C0 RET NZ D929 C0 RET NZ D92A C0 RET NZ D92B C0 RET NZ D92C C0 RET NZ D92D C0 RET NZ D92E C0 RET NZ D92F C0 RET NZ D930 C0 RET NZ D931 C0 RET NZ D932 C0 RET NZ D933 C0 RET NZ D934 C0 RET NZ D935 C0 RET NZ D936 C0 RET NZ D937 C0 RET NZ D938 C0 RET NZ D939 C0 RET NZ D93A C0 RET NZ D93B C0 RET NZ D93C C0 RET NZ D93D C0 RET NZ D93E C0 RET NZ D93F C0 RET NZ D940 C0 RET NZ D941 C0 RET NZ D942 C0 RET NZ D943 C0 RET NZ D944 C0 RET NZ D945 C0 RET NZ D946 C0 RET NZ D947 00 NOP D948 E5 PUSH HL D949 211301 LD HL,&H113 D94C CDC600 CALL &HC6 D94F CD95D9 CALL &HD995 D952 49 LD C,C D953 4E LD C,(HL) D954 50 LD D,B D955 55 LD D,L D956 54 LD D,H D957 2020 JR NZ,+&H20 (&HD979) D959 2020 JR NZ,+&H20 (&HD97B) D95B 2020 JR NZ,+&H20 (&HD97D) D95D 3A2020 LD A,(&H2020) D960 08 EX AF,AF' D961 00 NOP D962 E1 POP HL D963 CDE3DA CALL &HDAE3 D966 CDD7DA CALL &HDAD7 D969 FE31 CP &H31 D96B CA99DA JP Z,&HDA99 D96E FE32 CP &H32 D970 CAB8DA JP Z,&HDAB8 D973 F660 OR &H60 D975 FE77 CP &H77 D977 CAF7DB JP Z,&HDBF7 D97A FE72 CP &H72 D97C 2827 JR Z,+&H27 (&HD9A5) D97E FE7A CP &H7A D980 CA00A0 JP Z,&HA000 D983 FE62 CP &H62 D985 CAC9DB JP Z,&HDBC9 D988 FE64 CP &H64 D98A CA7DDB JP Z,&HDB7D D98D 3EFF LD A,&HFF D98F CDF300 CALL &HF3 D992 C348D9 JP &HD948 D995 E3 EX (SP),HL D996 F5 PUSH AF D997 7E LD A,(HL) D998 B7 OR A D999 2806 JR Z,+&H6 (&HD9A1) D99B CDD7DA CALL &HDAD7 D99E 23 INC HL D99F 18F6 JR -&HA (&HD997) D9A1 23 INC HL D9A2 F1 POP AF D9A3 E3 EX (SP),HL D9A4 C9 RET D9A5 21D2D9 LD HL,&HD9D2 D9A8 0630 LD B,&H30 D9AA 3600 LD (HL),&H0 D9AC 23 INC HL D9AD 10FB DJNZ -&H5 (&HD9AA) D9AF 210FDA LD HL,&HDA0F D9B2 CDCAD9 CALL &HD9CA D9B5 2128DA LD HL,&HDA28 D9B8 CDCAD9 CALL &HD9CA D9BB 2141DA LD HL,&HDA41 D9BE CDCAD9 CALL &HD9CA D9C1 215ADA LD HL,&HDA5A D9C4 CDCAD9 CALL &HD9CA D9C7 C3C9D8 JP &HD8C9 D9CA 0606 LD B,&H6 D9CC 3620 LD (HL),&H20 D9CE 23 INC HL D9CF 10FB DJNZ -&H5 (&HD9CC) D9D1 C9 RET D9D2 00 NOP D9D3 00 NOP D9D4 00 NOP D9D5 00 NOP D9D6 00 NOP D9D7 00 NOP D9D8 00 NOP D9D9 00 NOP D9DA 00 NOP D9DB 00 NOP D9DC 00 NOP D9DD 00 NOP D9DE 00 NOP D9DF 00 NOP D9E0 00 NOP D9E1 00 NOP D9E2 00 NOP D9E3 00 NOP D9E4 00 NOP D9E5 00 NOP D9E6 00 NOP D9E7 00 NOP D9E8 00 NOP D9E9 00 NOP D9EA 00 NOP D9EB 00 NOP D9EC 00 NOP D9ED 00 NOP D9EE 00 NOP D9EF 00 NOP D9F0 00 NOP D9F1 00 NOP D9F2 00 NOP D9F3 00 NOP D9F4 00 NOP D9F5 00 NOP D9F6 00 NOP D9F7 00 NOP D9F8 00 NOP D9F9 00 NOP D9FA 00 NOP D9FB 00 NOP D9FC 00 NOP D9FD 00 NOP D9FE 00 NOP D9FF 00 NOP DA00 00 NOP DA01 00 NOP
|
|
|
En línea
|
|
|
|
manolito74
|
|
« Respuesta #14 : 30 de Junio de 2014, 01:36:32 pm » |
|
Listado Desensamblado Copión "VECOPE" (Parte 2/2)DA02 0F RRCA DA03 DA0000 JP C,&H0 DA06 210C01 LD HL,&H10C DA09 CDC600 CALL &HC6 DA0C CD95D9 CALL &HD995 DA0F 2020 JR NZ,+&H20 (&HDA31) DA11 2020 JR NZ,+&H20 (&HDA33) DA13 2020 JR NZ,+&H20 (&HDA35) DA15 2020 JR NZ,+&H20 (&HDA37) DA17 00 NOP DA18 21D6D9 LD HL,&HD9D6 DA1B CDEDDA CALL &HDAED DA1E C9 RET DA1F 210D01 LD HL,&H10D DA22 CDC600 CALL &HC6 DA25 CD95D9 CALL &HD995 DA28 2020 JR NZ,+&H20 (&HDA4A) DA2A 2020 JR NZ,+&H20 (&HDA4C) DA2C 2020 JR NZ,+&H20 (&HDA4E) DA2E 2020 JR NZ,+&H20 (&HDA50) DA30 00 NOP DA31 21E2D9 LD HL,&HD9E2 DA34 CDEDDA CALL &HDAED DA37 C9 RET DA38 210E01 LD HL,&H10E DA3B CDC600 CALL &HC6 DA3E CD95D9 CALL &HD995 DA41 2020 JR NZ,+&H20 (&HDA63) DA43 2020 JR NZ,+&H20 (&HDA65) DA45 2020 JR NZ,+&H20 (&HDA67) DA47 2020 JR NZ,+&H20 (&HDA69) DA49 00 NOP DA4A 21EED9 LD HL,&HD9EE DA4D CDEDDA CALL &HDAED DA50 C9 RET DA51 210F01 LD HL,&H10F DA54 CDC600 CALL &HC6 DA57 CD95D9 CALL &HD995 DA5A 2020 JR NZ,+&H20 (&HDA7C) DA5C 2020 JR NZ,+&H20 (&HDA7E) DA5E 2020 JR NZ,+&H20 (&HDA80) DA60 2020 JR NZ,+&H20 (&HDA82) DA62 00 NOP DA63 21FAD9 LD HL,&HD9FA DA66 CDEDDA CALL &HDAED DA69 C9 RET DA6A 21090C LD HL,&HC09 DA6D CDC600 CALL &HC6 DA70 3A06F4 LD A,(&HF406) DA73 FE25 CP &H25 DA75 2811 JR Z,+&H11 (&HDA88) DA77 CD95D9 CALL &HD995 DA7A 3C INC A DA7B 313230 LD SP,&H3032 DA7E 303E JR NC,+&H3E (&HDABE) DA80 2020 JR NZ,+&H20 (&HDAA2) DA82 42 LD B,D DA83 41 LD B,C DA84 55 LD D,L DA85 44 LD B,H DA86 00 NOP DA87 C9 RET DA88 CD95D9 CALL &HD995 DA8B 3C INC A DA8C 323430 LD (&H3034),A DA8F 303E JR NC,+&H3E (&HDACF) DA91 2020 JR NZ,+&H20 (&HDAB3) DA93 42 LD B,D DA94 41 LD B,C DA95 55 LD D,L DA96 44 LD B,H DA97 00 NOP DA98 C9 RET DA99 3E53 LD A,&H53 DA9B 3206F4 LD (&HF406),A DA9E 3E5C LD A,&H5C DAA0 3207F4 LD (&HF407),A DAA3 3E26 LD A,&H26 DAA5 3208F4 LD (&HF408),A DAA8 3E2D LD A,&H2D DAAA 3209F4 LD (&HF409),A DAAD 3E0F LD A,&HF DAAF 320AF4 LD (&HF40A),A DAB2 CD6ADA CALL &HDA6A DAB5 C3C9D8 JP &HD8C9 DAB8 3E25 LD A,&H25 DABA 3206F4 LD (&HF406),A DABD 3E2D LD A,&H2D DABF 3207F4 LD (&HF407),A DAC2 3E0E LD A,&HE DAC4 3208F4 LD (&HF408),A DAC7 3E16 LD A,&H16 DAC9 3209F4 LD (&HF409),A DACC 3E1F LD A,&H1F DACE 320AF4 LD (&HF40A),A DAD1 CD6ADA CALL &HDA6A DAD4 C3C9D8 JP &HD8C9 DAD7 F5 PUSH AF DAD8 C5 PUSH BC DAD9 D5 PUSH DE DADA E5 PUSH HL DADB CDA200 CALL &HA2 DADE E1 POP HL DADF D1 POP DE DAE0 C1 POP BC DAE1 F1 POP AF DAE2 C9 RET DAE3 C5 PUSH BC DAE4 D5 PUSH DE DAE5 E5 PUSH HL DAE6 CD9F00 CALL &H9F DAE9 E1 POP HL DAEA D1 POP DE DAEB C1 POP BC DAEC C9 RET DAED 23 INC HL DAEE 7E LD A,(HL) DAEF CD3ADB CALL &HDB3A DAF2 2B DEC HL DAF3 7E LD A,(HL) DAF4 CD3ADB CALL &HDB3A DAF7 3E20 LD A,&H20 DAF9 CDD7DA CALL &HDAD7 DAFC 3E20 LD A,&H20 DAFE CDD7DA CALL &HDAD7 DB01 23 INC HL DB02 23 INC HL DB03 23 INC HL DB04 7E LD A,(HL) DB05 CD3ADB CALL &HDB3A DB08 2B DEC HL DB09 7E LD A,(HL) DB0A CD3ADB CALL &HDB3A DB0D 3E2D LD A,&H2D DB0F CDD7DA CALL &HDAD7 DB12 23 INC HL DB13 23 INC HL DB14 23 INC HL DB15 7E LD A,(HL) DB16 CD3ADB CALL &HDB3A DB19 2B DEC HL DB1A 7E LD A,(HL) DB1B CD3ADB CALL &HDB3A DB1E 3E2D LD A,&H2D DB20 CDD7DA CALL &HDAD7 DB23 23 INC HL DB24 23 INC HL DB25 23 INC HL DB26 7E LD A,(HL) DB27 CD3ADB CALL &HDB3A DB2A 2B DEC HL DB2B 7E LD A,(HL) DB2C CD3ADB CALL &HDB3A DB2F 3E0D LD A,&HD DB31 CDD7DA CALL &HDAD7 DB34 3E0A LD A,&HA DB36 CDD7DA CALL &HDAD7 DB39 C9 RET DB3A F5 PUSH AF DB3B 0F RRCA DB3C 0F RRCA DB3D 0F RRCA DB3E 0F RRCA DB3F E60F AND &HF DB41 CD45DB CALL &HDB45 DB44 F1 POP AF DB45 F5 PUSH AF DB46 E60F AND &HF DB48 F630 OR &H30 DB4A FE3A CP &H3A DB4C 3802 JR C,+&H2 (&HDB50) DB4E C607 ADD A,&H7 DB50 CDD7DA CALL &HDAD7 DB53 F1 POP AF DB54 C9 RET DB55 E5 PUSH HL DB56 D5 PUSH DE DB57 C5 PUSH BC DB58 CDE400 CALL &HE4 DB5B C1 POP BC DB5C D1 POP DE DB5D E1 POP HL DB5E C9 RET DB5F E5 PUSH HL DB60 D5 PUSH DE DB61 C5 PUSH BC DB62 CDED00 CALL &HED DB65 C1 POP BC DB66 D1 POP DE DB67 E1 POP HL DB68 C9 RET DB69 E5 PUSH HL DB6A D5 PUSH DE DB6B C5 PUSH BC DB6C CDE100 CALL &HE1 DB6F C1 POP BC DB70 D1 POP DE DB71 E1 POP HL DB72 C9 RET DB73 E5 PUSH HL DB74 D5 PUSH DE DB75 C5 PUSH BC DB76 CD3DDD CALL &HDD3D DB79 C1 POP BC DB7A D1 POP DE DB7B E1 POP HL DB7C C9 RET DB7D E5 PUSH HL DB7E CDE100 CALL &HE1 DB81 E1 POP HL DB82 DD7502 LD (IX+&H2),L DB85 DD7403 LD (IX+&H3),H DB88 010000 LD BC,&H0 DB8B CD55DB CALL &HDB55 DB8E 380D JR C,+&HD (&HDB9D) DB90 77 LD (HL),A DB91 23 INC HL DB92 03 INC BC DB93 CD73DB CALL &HDB73 DB96 3805 JR C,+&H5 (&HDB9D) DB98 77 LD (HL),A DB99 23 INC HL DB9A 03 INC BC DB9B 18F6 JR -&HA (&HDB93) DB9D DD7104 LD (IX+&H4),C DBA0 DD7005 LD (IX+&H5),B DBA3 CDE700 CALL &HE7 DBA6 DD360001 LD (IX+&H0),&H1 DBAA E5 PUSH HL DBAB 2A02DA LD HL,(&HDA02) DBAE 3E3C LD A,&H3C DBB0 77 LD (HL),A DBB1 23 INC HL DBB2 3E44 LD A,&H44 DBB4 77 LD (HL),A DBB5 23 INC HL DBB6 3E41 LD A,&H41 DBB8 77 LD (HL),A DBB9 23 INC HL DBBA 3E54 LD A,&H54 DBBC 77 LD (HL),A DBBD 23 INC HL DBBE 3E41 LD A,&H41 DBC0 77 LD (HL),A DBC1 23 INC HL DBC2 3E3E LD A,&H3E DBC4 77 LD (HL),A DBC5 E1 POP HL DBC6 C3C9D8 JP &HD8C9 DBC9 E5 PUSH HL DBCA CD8FDC CALL &HDC8F DBCD CD06DA CALL &HDA06 DBD0 CD1FDA CALL &HDA1F DBD3 CD38DA CALL &HDA38 DBD6 CD51DA CALL &HDA51 DBD9 CDCFDC CALL &HDCCF DBDC E1 POP HL DBDD DD7502 LD (IX+&H2),L DBE0 DD7403 LD (IX+&H3),H DBE3 CD55DB CALL &HDB55 DBE6 77 LD (HL),A DBE7 23 INC HL DBE8 0B DEC BC DBE9 78 LD A,B DBEA B1 OR C DBEB 20F6 JR NZ,-&HA (&HDBE3) DBED CDE700 CALL &HE7 DBF0 DD360002 LD (IX+&H0),&H2 DBF4 C3C9D8 JP &HD8C9 DBF7 210040 LD HL,&H4000 DBFA DD21D2D9 LD IX,&HD9D2 DBFE 110FDA LD DE,&HDA0F DC01 ED5302DA LD (&HDA02),DE DC05 CD35DC CALL &HDC35 DC08 DD21DED9 LD IX,&HD9DE DC0C 1128DA LD DE,&HDA28 DC0F ED5302DA LD (&HDA02),DE DC13 CD35DC CALL &HDC35 DC16 DD21EAD9 LD IX,&HD9EA DC1A 1141DA LD DE,&HDA41 DC1D ED5302DA LD (&HDA02),DE DC21 CD35DC CALL &HDC35 DC24 DD21F6D9 LD IX,&HD9F6 DC28 115ADA LD DE,&HDA5A DC2B ED5302DA LD (&HDA02),DE DC2F CD35DC CALL &HDC35 DC32 C3C9D8 JP &HD8C9 DC35 DD7E00 LD A,(IX+&H0) DC38 FE00 CP &H0 DC3A C8 RET Z DC3B FE01 CP &H1 DC3D CC49DC CALL Z,&HDC49 DC40 DD7E00 LD A,(IX+&H0) DC43 FE02 CP &H2 DC45 CC6ADC CALL Z,&HDC6A DC48 C9 RET DC49 E5 PUSH HL DC4A CD2DDD CALL &HDD2D DC4D AF XOR A DC4E CDEA00 CALL &HEA DC51 DD4E04 LD C,(IX+&H4) DC54 DD4605 LD B,(IX+&H5) DC57 E1 POP HL DC58 79 LD A,C DC59 B0 OR B DC5A 2808 JR Z,+&H8 (&HDC64) DC5C 7E LD A,(HL) DC5D CD5FDB CALL &HDB5F DC60 23 INC HL DC61 0B DEC BC DC62 18F4 JR -&HC (&HDC58) DC64 E5 PUSH HL DC65 CDE700 CALL &HE7 DC68 E1 POP HL DC69 C9 RET DC6A E5 PUSH HL DC6B CD2DDD CALL &HDD2D DC6E CDAEDC CALL &HDCAE DC71 CD2DDD CALL &HDD2D DC74 AF XOR A DC75 CDEA00 CALL &HEA DC78 CD08DD CALL &HDD08 DC7B E1 POP HL DC7C DD4E04 LD C,(IX+&H4) DC7F DD4605 LD B,(IX+&H5) DC82 79 LD A,C DC83 B0 OR B DC84 CA64DC JP Z,&HDC64 DC87 7E LD A,(HL) DC88 CD5FDB CALL &HDB5F DC8B 23 INC HL DC8C 0B DEC BC DC8D 30F3 JR NC,-&HD (&HDC82) DC8F 0ED0 LD C,&HD0 DC91 CD69DB CALL &HDB69 DC94 060A LD B,&HA DC96 CD55DB CALL &HDB55 DC99 B9 CP C DC9A 20F5 JR NZ,-&HB (&HDC91) DC9C 10F8 DJNZ -&H8 (&HDC96) DC9E 2A02DA LD HL,(&HDA02) DCA1 0606 LD B,&H6 DCA3 CD55DB CALL &HDB55 DCA6 77 LD (HL),A DCA7 23 INC HL DCA8 10F9 DJNZ -&H7 (&HDCA3) DCAA CDE700 CALL &HE7 DCAD C9 RET DCAE 3EFF LD A,&HFF DCB0 CDEA00 CALL &HEA DCB3 060A LD B,&HA DCB5 3ED0 LD A,&HD0 DCB7 C5 PUSH BC DCB8 CDED00 CALL &HED DCBB C1 POP BC DCBC 10F7 DJNZ -&H9 (&HDCB5) DCBE 2A02DA LD HL,(&HDA02) DCC1 0606 LD B,&H6 DCC3 E5 PUSH HL DCC4 C5 PUSH BC DCC5 7E LD A,(HL) DCC6 CDED00 CALL &HED DCC9 C1 POP BC DCCA E1 POP HL DCCB 23 INC HL DCCC 10F5 DJNZ -&HB (&HDCC3) DCCE C9 RET DCCF CDE100 CALL &HE1 DCD2 CD55DB CALL &HDB55 DCD5 5F LD E,A DCD6 CD55DB CALL &HDB55 DCD9 57 LD D,A DCDA DD7306 LD (IX+&H6),E DCDD DD7207 LD (IX+&H7),D DCE0 CD55DB CALL &HDB55 DCE3 6F LD L,A DCE4 CD55DB CALL &HDB55 DCE7 67 LD H,A DCE8 DD7508 LD (IX+&H8),L DCEB DD7409 LD (IX+&H9),H DCEE ED52 SBC HL,DE DCF0 23 INC HL DCF1 E5 PUSH HL DCF2 C1 POP BC DCF3 CD55DB CALL &HDB55 DCF6 5F LD E,A DCF7 CD55DB CALL &HDB55 DCFA 57 LD D,A DCFB DD730A LD (IX+&HA),E DCFE DD720B LD (IX+&HB),D DD01 DD7104 LD (IX+&H4),C DD04 DD7005 LD (IX+&H5),B DD07 C9 RET DD08 DD7E06 LD A,(IX+&H6) DD0B CD5FDB CALL &HDB5F DD0E DD7E07 LD A,(IX+&H7) DD11 CD5FDB CALL &HDB5F DD14 DD7E08 LD A,(IX+&H8) DD17 CD5FDB CALL &HDB5F DD1A DD7E09 LD A,(IX+&H9) DD1D CD5FDB CALL &HDB5F DD20 DD7E0A LD A,(IX+&HA) DD23 CD5FDB CALL &HDB5F DD26 DD7E0B LD A,(IX+&HB) DD29 CD5FDB CALL &HDB5F DD2C C9 RET DD2D C5 PUSH BC DD2E 3E01 LD A,&H1 DD30 CDF300 CALL &HF3 DD33 010000 LD BC,&H0 DD36 0B DEC BC DD37 78 LD A,B DD38 B1 OR C DD39 20FB JR NZ,-&H5 (&HDD36) DD3B C1 POP BC DD3C C9 RET DD3D 3E1B LD A,&H1B DD3F 3205DA LD (&HDA05),A DD42 3AA4FC LD A,(&HFCA4) DD45 57 LD D,A DD46 CDCBDD CALL &HDDCB DD49 D8 RET C DD4A DBA2 IN A,(&HA2) DD4C 07 RLCA DD4D 30F7 JR NC,-&H9 (&HDD46) DD4F CDCBDD CALL &HDDCB DD52 D8 RET C DD53 DBA2 IN A,(&HA2) DD55 07 RLCA DD56 38F7 JR C,-&H9 (&HDD4F) DD58 1E00 LD E,&H0 DD5A CDA5DD CALL &HDDA5 DD5D 41 LD B,C DD5E CDA5DD CALL &HDDA5 DD61 D8 RET C DD62 78 LD A,B DD63 81 ADD A,C DD64 DA5DDD JP C,&HDD5D DD67 BA CP D DD68 38F3 JR C,-&HD (&HDD5D) DD6A 2E08 LD L,&H8 DD6C CD89DD CALL &HDD89 DD6F FE04 CP &H4 DD71 3F CCF DD72 D8 RET C DD73 FE02 CP &H2 DD75 3F CCF DD76 CB1A RR D DD78 79 LD A,C DD79 0F RRCA DD7A D4A9DD CALL NC,&HDDA9 DD7D CDA5DD CALL &HDDA5 DD80 2D DEC L DD81 C26CDD JP NZ,&HDD6C DD84 CDCBDD CALL &HDDCB DD87 7A LD A,D DD88 C9 RET DD89 3AA5FC LD A,(&HFCA5) DD8C 47 LD B,A DD8D 0E00 LD C,&H0 DD8F DBA2 IN A,(&HA2) DD91 AB XOR E DD92 F29DDD JP P,&HDD9D DD95 7B LD A,E DD96 2F CPL DD97 5F LD E,A DD98 0C INC C DD99 10F4 DJNZ -&HC (&HDD8F) DD9B 79 LD A,C DD9C C9 RET DD9D 00 NOP DD9E 00 NOP DD9F 00 NOP DDA0 00 NOP DDA1 10EC DJNZ -&H14 (&HDD8F) DDA3 79 LD A,C DDA4 C9 RET DDA5 CDCBDD CALL &HDDCB DDA8 D8 RET C DDA9 0E00 LD C,&H0 DDAB 0C INC C DDAC 280A JR Z,+&HA (&HDDB8) DDAE DBA2 IN A,(&HA2) DDB0 AB XOR E DDB1 F2ABDD JP P,&HDDAB DDB4 7B LD A,E DDB5 2F CPL DDB6 5F LD E,A DDB7 C9 RET DDB8 0D DEC C DDB9 C9 RET DDBA CDCBDD CALL &HDDCB DDBD D8 RET C DDBE DBA2 IN A,(&HA2) DDC0 07 RLCA DDC1 38F7 JR C,-&H9 (&HDDBA) DDC3 1E00 LD E,&H0 DDC5 CDA9DD CALL &HDDA9 DDC8 C3ABDD JP &HDDAB DDCB C5 PUSH BC DDCC ED4B04DA LD BC,(&HDA04) DDD0 1007 DJNZ +&H7 (&HDDD9) DDD2 ED4304DA LD (&HDA04),BC DDD6 C1 POP BC DDD7 37 SCF DDD8 C9 RET DDD9 ED4304DA LD (&HDA04),BC DDDD C1 POP BC DDDE C36F04 JP &H46F DDE1 43 LD B,E DDE2 4F LD C,A DDE3 50 LD D,B DDE4 59 LD E,C DDE5 2056 JR NZ,+&H56 (&HDE3D) DDE7 45 LD B,L DDE8 52 LD D,D DDE9 53 LD D,E DDEA 2032 JR NZ,+&H32 (&HDE1E) DDEC 2E31 LD L,&H31 DDEE 00 NOP
|
|
|
En línea
|
|
|
|
|