Guía práctica de uso Action Replay de C64 (Monitor CM aún en desarrollo )

Avatar de Usuario
Chema
Mensajes: 1978
Registrado: 21 Jun 2012 20:13
Ubicación: Gijón
Agradecido : 1185 veces
Agradecimiento recibido: 391 veces
Contactar:

Re: (WIP) Guía de uso de cartuchos del tipo Action Replay en C64 y Monitor CM

Mensajepor Chema » 26 Sep 2018 20:46

Último mensaje de la página anterior:

BlackHole escribió:Lo curioso es que de mi etapa con Amiga no me acuerdo NADA... y eso que fue posterior.

Tu mente ha bloqueado los recuerdos para evitar males mayores... suele ocurrir con las experiencias traumáticas. Y es que pasar de un 6502 y una arquitectura normal a un Amiga... -507

BlackHole
Mensajes: 905
Registrado: 03 Ago 2011 23:07
Ubicación: Aluche, Madrid
Agradecido : 5 veces
Agradecimiento recibido: 116 veces

Re: Guía práctica de uso Action Replay de C64 (Monitor CM aún en desarrollo )

Mensajepor BlackHole » 26 Sep 2018 21:45

Bueno, son muchos muchos los años de los que no me acuerdo nada, ni del colegio, ni del instituto... casi ni de la universidad. En fin.

Avatar de Usuario
minter
Mensajes: 1982
Registrado: 22 Jul 2014 18:51
Agradecido : 1430 veces
Agradecimiento recibido: 592 veces

Re: Guía práctica de uso Action Replay de C64 (Monitor CM aún en desarrollo )

Mensajepor minter » 26 Sep 2018 22:33

BlackHole escribió:Bueno, son muchos muchos los años de los que no me acuerdo nada, ni del colegio, ni del instituto... casi ni de la universidad. En fin.

Eso nos pasa a todos. -507

Respecto a lo comentado a través de la pantalla, coger el nivel de energía por ejemplo, es exactamente lo que comentabas. Nunca pude bloquear una energía por lo que comentaste.
Lo de la vida, voy a intentarlo mañana con un juego sencillo e hilar hacia atrás, buscando la sentencia que pega el contador tipo Char en una posición que tengo que averiguar contando bloques en la pantalla y de ahí, ver de donde coge el contador. y luego buscar la instrucción que decrece ese contador y cambiarlo por algo que no haga nada.

BlackHole
Mensajes: 905
Registrado: 03 Ago 2011 23:07
Ubicación: Aluche, Madrid
Agradecido : 5 veces
Agradecimiento recibido: 116 veces

Re: Guía práctica de uso Action Replay de C64 (Monitor CM aún en desarrollo )

Mensajepor BlackHole » 27 Sep 2018 02:03

minter escribió:Lo de la vida, voy a intentarlo mañana con un juego sencillo e hilar hacia atrás
Podríamos hacer una especie de concurso, con un título en común, a ver qué sacamos cada uno.

Avatar de Usuario
ron
Mensajes: 18116
Registrado: 28 Oct 2010 14:20
Ubicación: retrocrypta
Agradecido : 1008 veces
Agradecimiento recibido: 1077 veces

Re: Guía práctica de uso Action Replay de C64 (Monitor CM aún en desarrollo )

Mensajepor ron » 27 Sep 2018 08:41

No puedo más que estar 100% de acuerdo con Fran (blackhole), ya que lo que narra es verídico. Cosas que conocía y sabía reproducir no son más ya que un eco del pasado. Hay cosas de las que recuerdo pequeños retales pero que me resultan imposible recuperar sin recurrir a la documentación.- ¿Será que por edad ya nos patina la neurona? o simplemente se trata de que es tal la cantidad de información y detalles a retener de tantos micros que la cosa no da para más-. xD ;-)

Por cierto, este post es candidato a la próxima RW Magazine ya que puede salir algo muy interesante. Gracias

Avatar de Usuario
kikems
Mensajes: 2646
Registrado: 30 May 2013 19:23
Agradecido : 625 veces
Agradecimiento recibido: 927 veces

Re: Guía práctica de uso Action Replay de C64 (Monitor CM aún en desarrollo )

Mensajepor kikems » 27 Sep 2018 10:05

BlackHole escribió:
minter escribió:Lo de la vida, voy a intentarlo mañana con un juego sencillo e hilar hacia atrás
Podríamos hacer una especie de concurso, con un título en común, a ver qué sacamos cada uno.


Me parece bien, a fin de cuentas se trata de aprender y disfrutar en el proceso del "cacharreo". Ye elevaría a propuesta a 3 juego, por si alguno no damos con ello. -grin

La gracias está en limitarlo a las herramientas, clásicas, puede hacerse sobre emulador, pero nada de plugins del emulador o desensambladores en el PC, que ya veo venir a Minter. La idea es recrear el proceso como se haría en los 80, con un C64, su Action Replay o similar, o un monitor tipo Hes Mon o similar.
Creo que el "concurso" deberá basarse en hacer un post con el proceso , descrito paso a paso, hasta llegar a la solución. No gana el que termine primero, gana el que tenga un proceso mejor, más adecuado, simple o ingenioso.

El premio, pues sencillo un aplauso y el disfrute personal de aprender, recordar o simplemente entretenerse con un C64 de una forma diferente a la más habitual que es jugar a juegos.

Avatar de Usuario
kikems
Mensajes: 2646
Registrado: 30 May 2013 19:23
Agradecido : 625 veces
Agradecimiento recibido: 927 veces

Re: Guía práctica de uso Action Replay de C64 (Monitor CM aún en desarrollo )

Mensajepor kikems » 27 Sep 2018 10:20

Aquí os dejo las instrucciones generales en inglés del monitor de Action Replay.

7. MACHINE CODE MONITOR

Action Replay includes a powerful extended Machine Code Monitor.
To call the Monitor from Fastload, enter MON and press F8. The
Monitor is also available from the Freeze Menu. In this mode all
of the memory including the screen, stack and zero page may be
examined in its condition at the point at which the program
was frozen. All 64K of memory remains unaffected by the Freeze
Monitor. Any alterations made will be incorporated into the
program when it is restarted or saved. A working knowledge of
6502 assembly language and Hex notation is required by the user,
if the Monitor is to be used effectively. Some of the Monitor
instructions can cause the system to crash if the user is not
fully aware of what is going on.

7.1 - COMMAND SUMMARY

X - Exit to Basic or Freeze Menu.
A - Assemble.
D - Disassemble.
M - Display memory in Hex.
I - Interpret memory as ASCII codes.
I* - Interpret memory as CBM codes.
* - Toggle RAM/ROM modes.
R - Display registers at entry or freeze time.
F - Fill memory.
C - Compare memory.
T - Transfer memory.
G - Execute program as per register display.
N - Number conversion.
P - (prefix). Direct output to the printer (device 4).
B - Execute a Basic command.
L,S,V - Load, Save, Verify.
I/O - Displays I/O registers (freeze mode only).
@ - Read error channel or send disk command.
$ - Display directory.
@*8 - Access drive memory (device 8).
@*9 - Access drive memory (device 9).
@* - Return access to computer memory.
@ME - Execute memory in disk drive.
@BR - Read a disk sector into computer memory.
@BW - Write a sector from computer memory to disk.

7.2 - DESCRIPTION OF COMMANDS

NOTE: When an end address is specified it should be exclusive.
The end address is one Byte greater than the last address to be
operated on e.g.:

.S" PROGNAME",8,C000,D000 saves up to but not including D000.


EXAMINING MEMORY. Memory may be examined in Hex/ASCII,
Disassembly, or Interpreted as ASCII or screen codes e.g.:

.D C000 D000 - disassemble from $C000 to $D000.
.M C000 D000 - display memory from $C000 to $D000.
.I C000 D000 - interpret ASCII from $C000 to $D000.
.D C000 - disassemble one instruction at $C000.
.M C000- - display memory from $C000 onwards.
.D - disassemble from the current address onwards.
.I* - interpret Screen Codes from the current address.

The display can be controlled in two ways:

a) Function keys F5 and F7 cause continual scrolling up or
down respectively. Set for fast scanning through memory.
Any other key will stop or start the display. F5 and F7
change the direction of the scroll. STOP or CURSOR DOWN
returns to the input prompt.

b) Cursor Up and Cursor Down will scroll the display by one
line at the top or bottom of the screen and return to input
prompt. Best for editing. Memory may be altered - type over
any byte, code or mnemonic and press RETURN. A question mark
indicates an error.

1) BANK SWITCHING. On entry, the Monitor is in RAM mode - all
systems ROM's are switched out during memory access. To access
the ROM's and I/O devices, use the * command, which toggles
between the two modes.

2) ASSEMBLY. E.g.:
.A C000 LDA #$01
Assemble an instruction in standard 6502 mnemonics at $C000.
The next memory address will be displayed ready for the next
instruction.

3) REGISTER DISPLAY.
.R
The program counter, A, X & Y registers, location 1 and the stack
pointer are displayed in Hex. The Status register is displayed
in Binary. Alter registers by typing over the relevant byte or
flag.

4) FILL MEMORY. E.g.:
.F C000 D000 AA
Fill memory from $C000 to $D000 with the byte $AA.

5) HUNT MEMORY. E.g.:
.H C000 D000 01 02 03
.H C000 D000 "STRING"
Hunt through memory for a sequence of bytes or an ASCII
string. If any occurrence is detected, the address will be
displayed.

6) COMPARE. E.g.:
.C C000 D000 E000
Compare the area of memory from $C000 to $D000 with memory
starting at $E000. If there is any discrepancy, the memory
locations will be displayed together with the bytes at those
locations.

7) TRANSFER MEMORY. E.g.:
.T C000 D000 E000
Move memory starting at $C000 and ending at $D000 and move it
to memory starting at $E000. This is an intelligent transfer -
memory areas may overlap and may be moved either up or down in
memory.

8) GO. E.g.: .G C000
Load registers as per the register display and start executing the
machine code program starting at $C000. The program may end with
either a BRK or an RTS instruction.

9) NUMBER CONVERSION. E.g.:
.N $C000 .N 49152 .N %10101010 .N $C000+$FF
.N $FF-1+$4000 .N $FF00/(2 * $AA)
Displays the result of an expression in HEX, DECIMAL and BINARY.
If the expression is a single byte value, a PETASCII character is
displayed.

10) OUTPUT TO PRINTER. E.g.:
.PM C000 D000
.PH C000 D000 "STRING"
P is used as a prefix to another command. Memory display will be
directed to the printer (device 4). Hold STOP to quit.

11) EXECUTE A BASIC COMMAND. E.g.:
.BPRINT 8*256
.BPRINT "TEST"
.BPLIST

12) LOAD, SAVE & VERIFY. E.g.:
.L"PROGNAME"
.L"PROGNAME",8,C000
.L"",1,C000
.S"PROGNAME",8,C000,D000
.S"PROGNAME",8,C000,D000,E000
.V"PROGNAME"
Load, Save, Verify. If a load address is specified, the program
will be loaded to that location, otherwise it will be loaded to
the address from which it was saved. Save requires a start and
end address, which should be one byte after the last address to
be saved. If an additional address is added to the save
addresses, this will be saved as the reload address of the
program (disk only). All disk I/O uses RAM locations.

NOTE: You cannot load and save memory below $0800 if the
Monitor was entered from the Freeze Menu.

13) I/O REGISTERS.
.IO
Displays the I/O registers $DC00-$DC0F,$DD00-$DD0F & $D000-$D02E.
Any alternations will be incorporated on Restart or Backup. This
command only works if the Monitor was called from the Freeze
Menu.

Avatar de Usuario
minter
Mensajes: 1982
Registrado: 22 Jul 2014 18:51
Agradecido : 1430 veces
Agradecimiento recibido: 592 veces

Re: Guía práctica de uso Action Replay de C64 (Monitor CM aún en desarrollo )

Mensajepor minter » 27 Sep 2018 10:50

Yo tengo en mente empezar con el Popeye.
Juego sencillito, que la vida está representada por un contador tipo Char (o eso intuyo) y que me trae buenos recuerdos de la infancia.
Me pareció buena conversión de la recreativa y creo recordar que permitia salir al Basic o al Monitor sin ser pisado y volver con SYS.
También era un juego que me impresionaba lo rápido que cargaba con un Turbo. En 7 vueltas mi versión pirata cargaba.
Lo intento y luego comento la jugada.
De premio... Un Caphopo virtual. -507

BlackHole
Mensajes: 905
Registrado: 03 Ago 2011 23:07
Ubicación: Aluche, Madrid
Agradecido : 5 veces
Agradecimiento recibido: 116 veces

Re: Guía práctica de uso Action Replay de C64 (Monitor CM aún en desarrollo )

Mensajepor BlackHole » 27 Sep 2018 14:08

Resulta que hay 4 juegos de Popeye en el C64. ¿A cuál te refieres?

Código: Seleccionar todo

Popeye     Parker Brothers        1983    Jump And Run
Popeye     King Features          1986    Beat em Up
Popeye 2   Alternative Software   1988    Jump And Run
Popeye 3   Alternative Software   1992    Sports

Popeye_(Parker_Bros).zip
Popeye C64 TAP (Parker Bros 1983)
(35.34 KiB) Descargado 2 veces

Avatar de Usuario
minter
Mensajes: 1982
Registrado: 22 Jul 2014 18:51
Agradecido : 1430 veces
Agradecimiento recibido: 592 veces

Re: Guía práctica de uso Action Replay de C64 (Monitor CM aún en desarrollo )

Mensajepor minter » 27 Sep 2018 15:05

El primero, el de los Brothers.

Por cierto... Me he fijado que hay una versión que pone "Jedi ate spinacs..."


Mira a ver que resulta que eso de JEDI va a ser un loader de un cartucho de un grupo de crackers... Porque el MI tambien tiene un TAP de Jedi. :)
Y lo que grababan era un snapshot y se lanzaba con su SYS pero cambiando el Token del Basic.

Voy recordando.

Por cierto... El popeye tiene el contador de vidas en la pg zero pos 44, pero lo decrece mediante DEC $44,X creo que en la $0200. No emplea el C6 sino el D6 de instrucción de DEC.
Tengo que revisar a ver si el HesMon me está recolocando alguna cosa. Lo dudo, pero me extraña. Sigo WIP

Pues si, el hesmon me recoloca cosas. con el monitor del AR me coloca el descontador en el $8110

BlackHole
Mensajes: 905
Registrado: 03 Ago 2011 23:07
Ubicación: Aluche, Madrid
Agradecido : 5 veces
Agradecimiento recibido: 116 veces

Re: Guía práctica de uso Action Replay de C64 (Monitor CM aún en desarrollo )

Mensajepor BlackHole » 27 Sep 2018 17:49

Vaya, me iba a poner a mirarlo y resulta que ya lo has encontrado, hahaha. Estaba intentando dormir algo, que hace un calor de mil demonios. En las noticias del tiempo siempre sale que llueve en el norte, que llueve en el sur, que llueve en el este... y al Oeste, Portugal. Pero al menos en mi barrio no ha llovido apenas en todo el año, con suerte caen 10 minutos de lluvia al mes. Madrid es una puta isla de calor, cuando se acerca alguna nube siempre rodea la ciudad y descarga antes de entrar en ella. Yo que vivo en alto, veo que llueve por Alcorcón, por Boadilla, por Pozuelo, por Majadahonda... y cuando llega la nube aquí, ya no tiene agua. En mi casa siempre estamos a 30 grados.

Para colmo me ha despertado un vecino del piso de abajo, que lleva dando martillazos a las paredes desde hace 15 meses. Se está haciendo las obras él mismo porque no tiene donde caerse muerto para contratar una cuadrilla de albañiles. Aaaargh! Tengo la cabeza como un bombo!

En fin, POKEFINDER da como resultado $8110, $B5 y si desensamblamos un poco:
.810A LDX $4C ;Aquí se guarda el jugador en curso (0 para PL1 y 1 para PL2)
.810C LDA $44,X
.810E BEQ $8117
.8110 DEC $44,X
.8112 BNE $8117

Con $95B7, $AD lo que conseguimos es que Brutus o la bruja no nos tiren botellas.
Lo que no me queda claro del todo es si podemos usar o no esa función del Action Replay.

Avatar de Usuario
minter
Mensajes: 1982
Registrado: 22 Jul 2014 18:51
Agradecido : 1430 veces
Agradecimiento recibido: 592 veces

Re: Guía práctica de uso Action Replay de C64 (Monitor CM aún en desarrollo )

Mensajepor minter » 27 Sep 2018 20:26

Estuve 3 años viviendo en Madrid y se lo que dices. Calor por todas partes. Y cuando viene la noche, las aceras parece quw tienen suelo radiante. Y eso que vivía en 3 cantos, qe quieras que no, era fresquito.

Respecto al Popeye... eatuve haciendo el gamberro cambiando DEC por INC. Cada vez que me mataban, vida extra!!! -507

Ahí hay que meter una instrucción que no decrezca y siempre hará branch a la 8117.

Lo que no he pillado es el Char que pone en pantalla el correspondiente cuando 44 tenga determinado valor.
Pero es que el.portatil me aguanta 10 minutos encendido y POF!
Está para tirar a la basura.

BlackHole
Mensajes: 905
Registrado: 03 Ago 2011 23:07
Ubicación: Aluche, Madrid
Agradecido : 5 veces
Agradecimiento recibido: 116 veces

Re: Guía práctica de uso Action Replay de C64 (Monitor CM aún en desarrollo )

Mensajepor BlackHole » 27 Sep 2018 21:03

Es que no es un char el contador de las vidas, es bitmap. Son los 8 bytes entre 6748 y 674F. La rutina exacta que imprime los pixels está en 97F0, pero es utilizada para dibujar toda la pantalla.
.C:97f0 A0 07 LDY #$07
.C:97f2 B1 B9 LDA ($B9),Y
.C:97f4 91 A9 STA ($A9),Y
.C:97f6 88 DEY
.C:97f7 10 F9 BPL $97F2
.C:97f9 60 RTS

El valor se coge un poco antes y se pasa a ¿PETSCII? para llamar a la rutina que finalmente lo "pinta":
.C:947d B9 44 00 LDA $0044,Y
.C:9480 18 CLC
.C:9481 69 67 ADC #$67
.C:9483 85 AD STA $AD
.C:9485 20 CF 97 JSR $97CF
Esto lo he sacado con el VICE, ya que no tiene mucha importancia y no forma parte del reto.

Siento lo de tu portátil. Será la batería, que está muerta. ¿No tienes cable de alimentación?

Avatar de Usuario
minter
Mensajes: 1982
Registrado: 22 Jul 2014 18:51
Agradecido : 1430 veces
Agradecimiento recibido: 592 veces

Re: Guía práctica de uso Action Replay de C64 (Monitor CM aún en desarrollo )

Mensajepor minter » 27 Sep 2018 22:39

Torruosos son los caminos del señor Tramiel.
Veo que el camino inverso en este ejemplo es liante por eso que acabas de deducir.
A partir del contador eligue un PetCII y lo pega ahí. Bien encontrado!

Lo del portatil es que se calienta hasta que hace PLOF! La batería ya había muerto hace 10 años, estoy con cargador.
Pero tengo el Speedswitch y el speedfan para controlar velocidad de micro y ventilador. Cuando llego a 54 grados al 100% de micro, pete de Pantalla azul. Y eso que tengo el micro con pasta térmica nueva y conductos limpios, pero ya no puede mas el pobrecito. Cuando emulo, se pone a toda castaña y lo que aguanta.
Por ejemplo, el juego del Froggy nunca lo he podido acabar porque antes se cuelga el ordenador.
Es mu viejo... Es un Compaq 810. Una castaña.
Snif!
Tengo que usar Opera ya que otro navegador chupa muchos recursos.
En fin... Otro juego? Propuestas?

BlackHole
Mensajes: 905
Registrado: 03 Ago 2011 23:07
Ubicación: Aluche, Madrid
Agradecido : 5 veces
Agradecimiento recibido: 116 veces

Re: Guía práctica de uso Action Replay de C64 (Monitor CM aún en desarrollo )

Mensajepor BlackHole » 28 Sep 2018 13:19

Ni idea, no conozco el equipo. Los resultados de Google me muestran el Compaq CQ45-810LA (pero ese es un equipo para Latinoamérica) con Windows 8 y 2 GB de RAM (suicidio directo) y trae un Celeron B820 que no me cuadra pues salió en 2012. También una antigua PDA con 32 MB de RAM y un Windows CE, que supongo que no será de lo que estamos hablando. ¿Seguro que es la nomenclatura correcta? Bueno, da igual... pero es que un micro limpio no se debe poner al 100% si no hay un error de software serio. ¿Arrancaste con Linux para ver si es problema del sistema? Que un equipo sea viejo, no implica que deba estar con la lengua fuera para una tontería como un emulador.

Sobre el juego, ¿qué te parece Renegade de Imagine/Taito? Es una de mis bestias negras, nunca pasé el primer nivel. Con eso de que te mueves con el joystick 2, pero luchas con el teclado (←, 1, 2) pues es un jaleo y enseguida te matan. Tiene un contador de energía que parecen chars, las vidas abajo con sprites y encima el tiempo por nivel. Muchas cosas que buscar.
Adjuntos
Renegade-tape-.rar
Renegade C64 TAP (Imagine 1987)
(47.71 KiB) Descargado 3 veces

Avatar de Usuario
kikems
Mensajes: 2646
Registrado: 30 May 2013 19:23
Agradecido : 625 veces
Agradecimiento recibido: 927 veces

Re: Guía práctica de uso Action Replay de C64 (Monitor CM aún en desarrollo )

Mensajepor kikems » 28 Sep 2018 13:25

BlackHole escribió:Sobre el juego, ¿qué te parece Renegade de Imagine/Taito? Es una de mis bestias negras, nunca pasé el primer nivel. Con eso de que te mueves con el joystick 2, pero luchas con el teclado (←, 1, 2) pues es un jaleo y enseguida te matan. Tiene un contador de energía que parecen chars, las vidas abajo con sprites y encima el tiempo por nivel. Muchas cosas que buscar.


Voy a mirar ese Renegade, a ver si alcanzo a entender lo que hacéis desde la pantalla.
Creo que lo mejor, es lo que hace Blackhole, compartir el disco del juego a "explotar" para que todos toquemos la misma versión.

Avatar de Usuario
minter
Mensajes: 1982
Registrado: 22 Jul 2014 18:51
Agradecido : 1430 veces
Agradecimiento recibido: 592 veces

Re: Guía práctica de uso Action Replay de C64 (Monitor CM aún en desarrollo )

Mensajepor minter » 28 Sep 2018 19:34

En este juego si que me matan rápido. -507


Volver a “Hardware C64”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado