Tutorial para pasar de dsk a cdt por CECPC

Cómo pasar juegos a diferentes archivos, herramientas, software.
Avatar de Usuario
Mode 2
I am The Forum
I am The Forum
Mensajes: 2068
Registrado: Lun 10 Oct , 2005 8:01 pm
Ubicación: Sevilla, años 80.
Contactar:

Re: Tutorial para pasar de dsk a cdt por CECPC

Mensajepor Mode 2 » Mié 31 Ago , 2016 1:29 pm

Enhorabuena por el hilo, CECPC, no lo había visto hasta el reflote de Neli. =D>
BUSCO: VideoPac+, Jaguar Saturn, Micromanía 1, Amstrad Semanal, MicroHobby, juegos especialmente CPC y Vectrex, Aquarius, Sam Copé, 520 ST, manual +3, manual CPC664.

CECPC
Me voy lanzando
Me voy lanzando
Mensajes: 77
Registrado: Jue 29 Dic , 2005 4:07 pm

Re: Tutorial para pasar de dsk a cdt por CECPC

Mensajepor CECPC » Mié 31 Ago , 2016 10:54 pm

Como me han preguntado por el tutorial, he decidido hacer unos videotutoriales que a poco me dan menos pereza que sacar un gran puñado de screenshots.

De momento va el primero.

https://www.youtube.com/watch?v=bevh9Egau5s

Este es el sencillo. En el próximo voy a hacer una introducción al debugger y ensamblador del WinAPE.

P.D. YA, ya se que el escritorio está lleno de basura. Este es un ordenador viejo y ya me da pereza limpiarlo :P

Avatar de Usuario
MiguelSky
Lord of Short Time
Lord of Short Time
Mensajes: 6969
Registrado: Sab 08 Oct , 2005 2:02 am
Contactar:

Re: Tutorial para pasar de dsk a cdt por CECPC

Mensajepor MiguelSky » Mié 31 Ago , 2016 11:07 pm

Te he editado el enlace, CECPC, el que habías puesto no funcionaba. Por cierto, buen tuto!! =D> =D> =D>

CECPC
Me voy lanzando
Me voy lanzando
Mensajes: 77
Registrado: Jue 29 Dic , 2005 4:07 pm

Re: Tutorial para pasar de dsk a cdt por CECPC

Mensajepor CECPC » Mié 31 Ago , 2016 11:31 pm

Te he editado el enlace, CECPC, el que habías puesto no funcionaba. Por cierto, buen tuto!! =D> =D> =D>
Gracias. Ya decía yo. Cuando le pulsé ví que ponía algo relativo al video pero como editor, y cuando fui a cambiarlo lo ví cambiado y me quedé un poco :shock:

En el próximo voy a hacer una introducción al ensamblador, el debugger y compilador de WinAPE, así como una primera demostración de carga del Oh Mummy desde rutinas Firmware del Amstrad.

Neli
Lechoncillo
Lechoncillo
Mensajes: 8
Registrado: Lun 29 Ago , 2016 8:19 pm

Re: Tutorial para pasar de dsk a cdt por CECPC

Mensajepor Neli » Jue 01 Sep , 2016 11:33 pm

Fantástico CECPC.
Por lo del Oh Mummy \:D/

He estado haciendo pruebas con el método de texto pero nada. No me funciona. A ver si tu puedes.
Tengo un adaptador de cinta, de estas que llevan incorporado un cabezal magnético y con un reproductor mp3 conectado a ella, y el adaptador este metido en la unidad de casete del 464, pues he probado pero nada. Carga el primer bloque, después me parece que el cargador detiene por unos segundos la cinta, y después le vuelve a dar la orden de "play" de nuevo. Pero no llega a cargar el juego.

Hoy probaré con siguiendo tus instrucciones del Video-tutorial.
A ver si hay suerte...
Última edición por Neli el Vie 02 Sep , 2016 8:43 am, editado 1 vez en total.

Neli
Lechoncillo
Lechoncillo
Mensajes: 8
Registrado: Lun 29 Ago , 2016 8:19 pm

Re: Tutorial para pasar de dsk a cdt por CECPC

Mensajepor Neli » Vie 02 Sep , 2016 12:52 am

Acabo de visionarlo.
Un video-tutorial para enmarcar.
=D> =D> =D> =D> =D> =D> =D>

CECPC
Me voy lanzando
Me voy lanzando
Mensajes: 77
Registrado: Jue 29 Dic , 2005 4:07 pm

Re: Tutorial para pasar de dsk a cdt por CECPC

Mensajepor CECPC » Vie 02 Sep , 2016 11:26 am

He estado haciendo pruebas con el método de texto pero nada. No me funciona. A ver si tu puedes.
Espero que te refieras a la parte del tutorial, porque si el problema lo tienes con el audio y el MP3, ahí me temo que poco puedo hacer.

Lo único decirte que podrías probar con 1000 baudios para aumentar la fiabilidad de la carga. Pero a parte de eso...

Ya he hecho el siguiente tutorial, con el código de ensamblador con carga turbo por firmware, pero ocupa demasiado (30 minutos) así que creo que lo voy a rehacer el fin de semana. Además sospecho que Youtube me tumbaría un video tan largo gratuito o me encasquetaría publicidad o algo así.
Voy a intentar que los minitutoriales no pasen de 15 minutos.

Neli
Lechoncillo
Lechoncillo
Mensajes: 8
Registrado: Lun 29 Ago , 2016 8:19 pm

Re: Tutorial para pasar de dsk a cdt por CECPC

Mensajepor Neli » Vie 02 Sep , 2016 12:13 pm

FANTÁSTICO!!!
Funciona \:D/ \:D/
He probado con el adaptador introducido en la unidad de casette y funciona el "Oh Mummy".
=D> =D> =D> =D> =D> =D>

Esa pausa agregada de 2000ms creo que ha funcionado a la perfección.

Ahora a seguir aplicando tus conocimientos con los tutoriales que nos presentas, CECPC.
En cuando tengas colgado el siguiente, a por el voy!

Estoy super-entusiasmado :mrgreen: Poder volver a ver en mi Amstrad 464 el primer juego que vi delante de mi, cuando empecé a estudiar informática allá por el año 1986, me ha hecho ser muy feliz y con unas pilas recargadas a tope para empezar de nuevo con BASIC, Ensamblador... :wink:

Gracias una vez más, CECPC.

CECPC
Me voy lanzando
Me voy lanzando
Mensajes: 77
Registrado: Jue 29 Dic , 2005 4:07 pm

Re: Tutorial para pasar de dsk a cdt por CECPC

Mensajepor CECPC » Sab 03 Sep , 2016 11:51 am

He agregado un nuevo videotutorial. No es el que correspondería, sino unos comentarios sobre como carga el firmware los bloques y como podemos con el CDTMaster crear archivos de solo dos bloques, donde el segundo es mucho más grande.

https://www.youtube.com/watch?v=neCgwLFxnQE

Siento que no quedara bien guardado el audio del emulador y solo mi voz, pero tampoco es una pérdida importante.

Avatar de Usuario
MiguelSky
Lord of Short Time
Lord of Short Time
Mensajes: 6969
Registrado: Sab 08 Oct , 2005 2:02 am
Contactar:

Re: Tutorial para pasar de dsk a cdt por CECPC

Mensajepor MiguelSky » Sab 03 Sep , 2016 12:19 pm

=D> =D> =D>

CECPC
Me voy lanzando
Me voy lanzando
Mensajes: 77
Registrado: Jue 29 Dic , 2005 4:07 pm

Re: Tutorial para pasar de dsk a cdt por CECPC

Mensajepor CECPC » Dom 04 Sep , 2016 12:12 am

Ahora sí. Tutorial para carga en ensamblador Turbo basado en Firmware

https://www.youtube.com/watch?v=bICXe6AtQsc

CECPC
Me voy lanzando
Me voy lanzando
Mensajes: 77
Registrado: Jue 29 Dic , 2005 4:07 pm

Re: Tutorial para pasar de dsk a cdt por CECPC

Mensajepor CECPC » Dom 04 Sep , 2016 2:10 pm

Y el último videotutorial que agrega el ensamblador con borde de colores y compresión

https://www.youtube.com/watch?v=lnNqSlT5rCs

Por cierto, que se me ha olvidado al final pasar el código ensamblador que he creado a la cinta, pero esa operación ya la hice en el videotutorial anterior (el 3).

También se me olvidó agregar parar el motor al ensamblador.

Por curiosidad, el ensamblador final es este.

Código: Seleccionar todo

ORG #3000

PUSH AF
PUSH BC
PUSH DE
PUSH HL
PUSH IX

CALL motor_on

LD A,1
CALL &BC0E ; SCR SET MODE - Mode 1

LD BC,&0000
CALL &BC38 ; SCR SET BORDER - BORDER 0

XOR A ; Es equivalente a hacer LD A,0, pero un byte menos ;)
LD B,A
LD C,A
CALL &BC32 ; SCR SET INK - INK 0,0

LD A,1
LD B,24
LD C,B
CALL &BC32

; Nos vamos a asegurar de usar la "pluma" 1

LD A,1
CALL &BB90 ; TXT SET PEN

; En llamadas a firmware, el Locate son dos llamadas.
; Uno para establecer la fila y otro la columna

LD A,15
CALL &BB6F ; TXT SET COLUMN
LD A,21
CALL &BB72 ; TXT SET ROW

; Para imprimir una cadena, usaremos la función para imprimir un caracter
; Usamos una etiqueta de referencia para la posición de esta
LD HL,cadena

JR primer_caracter:

siguiente_caracter:

CALL &BB5A ; TXT OUTPUT. Imprimimos el caracter

primer_caracter:
LD A,(HL)
INC HL
OR A ; Al comparar A con A, en flag Z se activará cuando A sea 0, que usaremos como final de cadena.
JR NZ,siguiente_caracter

LD A,#54
LD IX,#4000
LD DE,#0591
CALL carga_bloque ; Cargamos un bloque 54, en &4000 con longitud &4000
JR NC,bad_loading ; Segun firmware. Carry= carga bien

LD A,1
CALL &BC0E ; SCR SET MODE - Mode 1

LD A,1
LD B,6
LD C,B
CALL &BC32

LD A,2
LD B,2
LD C,B
CALL &BC32

LD A,3
LD B,19
LD C,B
CALL &BC32

LD A,1
CALL &BC0E ; SCR SET MODE - Mode 1

; Ahora copiamos la pantalla de carga, desde la posicion 4000 a la memoria
; de la pantalla.
LD HL,#4000 ; Posicion de origen
LD DE,#C000 ; Posicion de destino
LD BC,#0591 ; Longitud del blqoue
CALL decod

LD A,#55
LD IX,#4000
LD DE,#1FFE
CALL carga_bloque ; Cargamos un bloque 54, en &4000 con longitud &4000
JR NC,bad_loading ; Segun firmware. Carry= carga bien

LD HL,#4000 ; Posicion de origen
LD DE,#6000 ; Posicion de destino
LD BC,#1FFE ; Longitud del blqoue
CALL decod

; Hemos terminado de cargar el juego.

CALL motor_off

POP IX
POP HL
POP DE
POP BC
POP AF
JP #6000 ; Iniciamos el juego

bad_loading:
CALL #0 ; Reset

cadena:

DB "Please Wait.."
DB 0 ; Fin de cadena


carga_bloque: DI
EXX
PUSH BC
PUSH DE
PUSH HL
CALL start_bloque
POP HL
POP DE
POP BC
EXX
EI
RET
start_bloque:
LD BC,#7F10
OUT (C),C
LD C,A
LD DE,#1000
LD HL,#544a
; LD HL,#534C
; #534C ->Colores en modo sincronización 53 ->cyan brillante 4c-> Rojo brillante
; Prueba 54-> negro 4A -> Amarillo brillante
EXX
L3061: PUSH DE
CALL L30AF
POP DE
JR NC,L3061
EXX
LD HL,#5457
; LD HL,#4A5f
; Colores en modo carga 4a44 -> 4a -> Amarillo brillante 44-> Azul
; Cambio a 54 -> negro 57 -> Azul Celeste
EXX
LD BC,#FFFF
LD (L3092),BC
INC B
L3075: CALL L30EF
RET NC
LD (IX+0),A
INC IX
DEC B
CALL Z,L3091
RET NC
DEC DE
LD A,D
OR E
JR NZ,L3075
CP B
SCF
RET Z
L308B: CALL L30EF
RET NC
DJNZ L308B
L3091: DEFB #01
L3092: DEFB #00
L3093: DEFB #00
CALL L30EF
RET NC
OR B
INC A
JR NZ,L30AB
CALL L30EF
RET NC
OR C
LD (L3092),A
LD (L3093),A
INC A
LD B,A
SCF
RET Z
L30AB: LD A,#02
OR A
RET
L30AF: LD L,#55
CALL L3120
RET NC
LD DE,#0000
LD H,D
L30B9: CALL L3120
RET NC
EX DE,HL
LD B,#00
ADD HL,BC
EX DE,HL
DEC H
JR NZ,L30B9
L30C5: LD H,C
LD A,C
SUB D
LD C,A
SBC A,A
LD B,A
EX DE,HL
ADD HL,BC
EX DE,HL
CALL L3120
RET NC
LD A,D
SRL A
SRL A
ADC A,D
SUB H
JR C,L30C5
SUB C
JR C,L30C5
LD A,D
RRA
ADC A,D
LD H,A
LD (L30F4),HL
CALL L30EF
RET NC
EXX
XOR C
EXX
RET NZ
SCF
RET
L30EF: PUSH DE
PUSH BC
LD E,#08
L30F3: DEFB "!"
L30F4: DEFB #00,#00
CALL L3120
CALL C,L3128
JR NC,L311D
LD A,H
SUB C
SBC A,A
RL D
LD HL,(L3092)
XOR H
JP P,L3113
LD A,H
XOR #08
LD H,A
LD A,L
XOR #10
LD L,A
SCF
L3113: ADC HL,HL
LD (L3092),HL
DEC E
JR NZ,L30F3
LD A,D
SCF
L311D: POP BC
POP DE
RET
L3120: LD A,R
RRCA
RRCA
INC A
AND #1F
LD C,A
L3128: LD B,#F5
L312A: LD A,C
ADD A,#02
LD C,A
JR C,L3147
IN A,(C)
XOR L
AND #80
JR NZ,L312A
LD R,A
RRC L
EXX
JR C,L3143
OUT (C),L
EXX
SCF
RET
L3143: OUT (C),H
EXX
RET
L3147: XOR A
INC A
RET


motor_off: LD BC,#F708
OUT (C),C
RET
motor_on: LD BC,#F709
OUT (C),C
RET



decod:
PUSH HL
PUSH BC
POP HL
POP BC
ADD HL,BC
PUSH HL
PUSH BC
POP HL
POP BC
;; Ahora BC Contiene la última posición de los datos comprimidos
paso:
LD A,B
CP H
RET C ;; Salir si nos hemos pasado
JR NZ,falta
LD A,C
CP L
RET C ;; Salir si nos hemos pasado
RET Z ;; Salir si hemos llegado
falta:
LD A,(HL)
INC HL
CP #80
JR NC,LRE
;; Si menor que #80, solo hay que copiar los datos
PUSH BC
LD C,A
XOR A
LD B,A
LDIR
POP BC
JR paso
lRE:
CP #FF
JR NZ,lz77
PUSH BC
LD A,(HL)
INC HL
PUSH AF
LD A,(HL)
INC HL
CP #80
JP p,lrelargo
JR lrecorto
lrelargo:
CP A
RL A
CP A
RR A
LD B,A
LD A,(HL)
INC HL
LD C,A
JR go_lre
lrecorto:
LD C,A
XOR A
LD B,A
go_lre:
POP AF
PUSH HL
LD (DE),A
PUSH DE
POP HL
INC DE
DEC BC
LDIR
POP HL
POP BC
JR paso
lz77:
PUSH BC
LD C,(HL)
INC HL
BIT 6,A
JR Z,noextra
LD B,C
LD C,(HL)
INC HL
JR cpbloq
noextra:
LD B,0
cpbloq:
AND #3F
PUSH HL
PUSH AF
PUSH DE
POP HL ;; HL = final de buffer de salida. Restamos BC
LD A,L
SUB C
LD L,A
LD A,H
SBC B
LD H,A
POP AF
LD B,0
LD C,A
LDIR
POP HL
POP BC
JR paso

Y la cinta final.
ohmummy_turbo_asm.cdt
(10.69 KiB) Descargado 69 veces

Neli
Lechoncillo
Lechoncillo
Mensajes: 8
Registrado: Lun 29 Ago , 2016 8:19 pm

Re: Tutorial para pasar de dsk a cdt por CECPC

Mensajepor Neli » Dom 04 Sep , 2016 10:53 pm

Hola a CECPC y al resto de usuarios interesados en este hilo :D
Siento mi desconexión durante los últimos dos días, por motivos de trabajo.
He visto que CECPC ha agregado varios video-tutoriales \:D/
Ahora mismo me pongo a ojearlos y a continuar con el tema.
Gracias CECPC, por tu voluntad y buen hacer con los videos y un saludo especial para ti :wink:
Ya te cuento.

nelbazan1972
Megaforero
Megaforero
Mensajes: 256
Registrado: Vie 21 Feb , 2014 5:53 pm

Re: Tutorial para pasar de dsk a cdt por CECPC

Mensajepor nelbazan1972 » Sab 10 Sep , 2016 3:41 pm

Sobran las palabras.

Para quitarse el sombrero. Gracias!


¿Quién está conectado?

Usuarios navegando por este Foro: Semrush [Bot]


La Comunidad Española
ESP Soft, juegos para tu CPC Foro de Amstrad CPC Todos los juegos para CPC en un CD Web dedicada al Amstrad CPC (utilidades) Información útil para el CPC (talleres) Selección de juegos de Amstrad CPC Mundo CPC Pree Play then any Key CPC Basic