Presentando la nueva seccion de cartridges Turbosoft
- vicktorx99
- expert
- Mensajes: 741
- Registrado: Mar Ene 08, 2008 12:02 pm
- Reputación: 0
Re: Presentando la nueva seccion de cartridges Turbosoft
exelente aporte con estos cartuchos ustedes hacen maravillas, master zzt y bones...la cagaron son unos geniecillos...jejeje se pasaron :-°
- Flako
- expert
- Mensajes: 1275
- Registrado: Mar May 29, 2007 12:18 am
- Reputación: 0
- Ubicación: Puerto San Antonio, Chile
Re: Presentando la nueva seccion de cartridges Turbosoft
Me alegra haber colaborado con un granito de arena...le doy las gracias tb a mi feria salvadora...que ahorade salvadora no tiene nada xD
Excelente cabros!
Excelente cabros!
- ZZT
- Site Admin
- Mensajes: 10900
- Registrado: Mar Nov 07, 2006 2:45 pm
- Reputación: 10
- Ubicación: La Florida-Santiago-Chile
- Contactar:
Re: Presentando la nueva seccion de cartridges Turbosoft
Tienes toda la razón, fue una época bonita cuando aparecía tanta cosa.Flako escribió:Me alegra haber colaborado con un granito de arena...le doy las gracias tb a mi feria salvadora...que ahora de salvadora no tiene nada xD
Excelente cabros!
- smartfinder
- hard player
- Mensajes: 347
- Registrado: Lun Nov 13, 2006 11:20 am
- Reputación: 0
- Ubicación: Entre Quilpué y la NETCOM
Re:
Hey, me pasa lo mismo no encuentro por ningun lado turbosoftware.rar cartuchos parchados por XT5ZZT escribió:No se donde deje las roms parchadas por XT5 y la descarga ya no esta disponible. ¿Alguien me las puede enviar pa poder subirlas?xt5 escribió:aqui estan los cartuchos D1,D3,D4,D5,D6,D7,E1 y E2 parchados para poder funcionar en un cartucho atarimax de 1mbit, los probe en el emulador y funcionan perfecto
http://rapidshare.com/files/132988461/t ... e.rar.html
have fun!
Alguien que me ayude
Re: Re:
ya los encontre por alli, los deje en http://www.ingenieria-inversa.cl/retro/ ... ftware.rar
te compraste un Atarimax?
te compraste un Atarimax?
- smartfinder
- hard player
- Mensajes: 347
- Registrado: Lun Nov 13, 2006 11:20 am
- Reputación: 0
- Ubicación: Entre Quilpué y la NETCOM
- kuramechi
- medium
- Mensajes: 97
- Registrado: Mié Dic 26, 2007 5:11 pm
- Reputación: 0
- Ubicación: Conce/Stgo
Re: Presentando la nueva seccion de cartridges Turbosoft
wen aporte el de los cart
- renix
- expert
- Mensajes: 2166
- Registrado: Dom May 20, 2007 2:21 pm
- Reputación: 0
- Ubicación: La Serena, Chile
- Contactar:
Re:
Hola XT5, si tienes tiempo me encantaria saber en que consistió el parchado para que funcionen en el cartridge de atarimaxxt5 escribió:aqui estan los cartuchos D1,D3,D4,D5,D6,D7,E1 y E2 parchados para poder funcionar en un cartucho atarimax de 1mbit, los probe en el emulador y funcionan perfecto
http://rapidshare.com/files/132988461/t ... e.rar.html
have fun!
Un abrazo
Re: Re:
ehh, pucha amigo renix, si tienes tiempo me encantaria ver ese cart de C64!!!renix escribió:Hola XT5, si tienes tiempo me encantaria saber en que consistió el parchado para que funcionen en el cartridge de atarimax
primero se comienza revisando los carts, el esquematico del cartucho turbosoftware esta aqui (el modelo D): http://www.retrogames.cl/foro/viewtopic ... 709#p73424 (el de atarimax ni idea) y ubicar la diferencia entre ambos
luego un poco de la logica de control para cartuchos y perifericos externos:
al acceder al rango D5XXh de la CPU, lo que hace el atari es hacer un assert en el pin CCTL del cartucho, entonces
cuando se recibe una señal en CCTL los ultimos 8 bits menos significativos del bus de direcciones corresponden al valor XX en D5XXh, osea de 00 a FFh.
cuando se recibe una señal en CCTL y en caso que estemos grabando un valor, los 8 bits del bus de datos corresponden al valor que estamos grabando en esa direccion.
asi mismo podemos leer valores de nuestro periferico.
si te fijas en el esquematico del carr del turbosoftware, ves que el flip flop retiene el estado de los 4 bits menos significativos del bus de datos y los pone en los 4 bits mas significativos de la EPROM para seleccionar la pagina.
y utiliza el 5 bit menos significativo que retiene el flip flop va a la señal /E de la EPROM, entonces si este bit esta en 1 y hacemos un assert a la linea CCTL, deshabilitamos la memoria.
el cartucho AtariMAX funciona de igual forma, salvo que en la ecuacion de seleccion de pagina incluye a la señal la señal R/W del cart (le hace un equivalente a un OR al final de la ecuacion del turbocart), entonces una imagen de AtariMAX funciona OK en un cart TurboSoftware, pero no al reves, y tenemos que parchar.
que se parcha? la posicion A5D6h y A5FFh que este caso son lectura (LDA) por escritura (STA), para agregar el assert a la señal /W que espera el cart AtariMAX
Código: Seleccionar todo
ROM:A5C4 selecciona_pagina:
ROM:A5C4 48 PHA
ROM:A5C5 8A TXA
ROM:A5C6 48 PHA
ROM:A5C7 08 PHP
ROM:A5C8 78 SEI
ROM:A5C9 AD 0E D4 LDA byte_D40E
ROM:A5CC 48 PHA ; push NMIEN
ROM:A5CD A9 00 LDA #0
ROM:A5CF 8D 0E D4 STA byte_D40E
ROM:A5D2 AE A9 0A LDX $AA9 ; $AA9 retiene la pagina a la que queremos cambiar
ROM:A5D2 ; 1...10h (en vez de 0...Fh ehhhhhh :S)
ROM:A5D5 CA DEX
ROM:A5D6 BD 00 D5 LDA $D500,X ; seleccionamos la pagina
ROM:A5D9 AD 13 D0 LDA byte_D013
ROM:A5DC 8D FA 03 STA $3FA
ROM:A5DF AD B1 0A LDA $AB1
ROM:A5E2 8D EB 03 STA $3EB
ROM:A5E5 A9 01 LDA #1
ROM:A5E7 8D F8 03 STA $3F8
ROM:A5EA 68 PLA ; pop NMIEN
ROM:A5EB 8D 0E D4 STA byte_D40E
ROM:A5EE 28 PLP
ROM:A5EF 68 PLA
ROM:A5F0 AA TAX
ROM:A5F1 68 PLA
ROM:A5F2 60 RTS
ROM:A5F2 ; End of function selecciona_pagina
Código: Seleccionar todo
ROM:A5F3 deshabilita_cart:
ROM:A5F3 48 PHA
ROM:A5F4 08 PHP
ROM:A5F5 78 SEI
ROM:A5F6 AD 0E D4 LDA byte_D40E
ROM:A5F9 48 PHA ; push NMIEN
ROM:A5FA A9 00 LDA #0
ROM:A5FC 8D 0E D4 STA byte_D40E
ROM:A5FF AD 10 D5 LDA byte_D510 ; bit 4 va al /E de la EPROM,
ROM:A5FF ; por lo tanto aqui se deshabilita la EPROM
ROM:A602 AD 01 D3 LDA byte_D301
ROM:A605 09 02 ORA #2
ROM:A607 8D 01 D3 STA byte_D301 ; PORTB|=2; Deshabilita ROM de BASIC
ROM:A60A AD 13 D0 LDA byte_D013
ROM:A60D 8D FA 03 STA $3FA
ROM:A610 AD B1 0A LDA $AB1
ROM:A613 8D EB 03 STA $3EB
ROM:A616 A9 01 LDA #1
ROM:A618 8D F8 03 STA $3F8
ROM:A61B 68 PLA
ROM:A61C 8D 0E D4 STA byte_D40E ; pop NMIEN
ROM:A61F 28 PLP
ROM:A620 68 PLA
ROM:A621 60 RTS
ROM:A621 ; End of function deshabilita_cart
si no me equivoco (y no tengo alucinaciones) el procedimiento para un cart C (o era E?) era levente distinto y se necesita poner unas instrucciones adicionales en vez de solo parchar, pero dejomoslo hasta aqui mejor.
ojala algo se entienda
- miltonshows
- hard player
- Mensajes: 473
- Registrado: Dom Nov 28, 2010 4:13 am
- Reputación: 0
Re: Presentando la nueva seccion de cartridges Turbosoft
Se entiende mas menos, pero bueno no todos le pegamos mucho al cuento. Pero muchas gracias por la explicacion XT5
Re: Re:
Me vay a obligar a desempolvar el mapping grrrrxt5 escribió:ehh, pucha amigo renix, si tienes tiempo me encantaria ver ese cart de C64!!!renix escribió:Hola XT5, si tienes tiempo me encantaria saber en que consistió el parchado para que funcionen en el cartridge de atarimax
primero se comienza revisando los carts, el esquematico del cartucho turbosoftware esta aqui (el modelo D): http://www.retrogames.cl/foro/viewtopic ... 709#p73424 (el de atarimax ni idea) y ubicar la diferencia entre ambos
luego un poco de la logica de control para cartuchos y perifericos externos:
al acceder al rango D5XXh de la CPU, lo que hace el atari es hacer un assert en el pin CCTL del cartucho, entonces
cuando se recibe una señal en CCTL los ultimos 8 bits menos significativos del bus de direcciones corresponden al valor XX en D5XXh, osea de 00 a FFh.
cuando se recibe una señal en CCTL y en caso que estemos grabando un valor, los 8 bits del bus de datos corresponden al valor que estamos grabando en esa direccion.
asi mismo podemos leer valores de nuestro periferico.
si te fijas en el esquematico del carr del turbosoftware, ves que el flip flop retiene el estado de los 4 bits menos significativos del bus de datos y los pone en los 4 bits mas significativos de la EPROM para seleccionar la pagina.
y utiliza el 5 bit menos significativo que retiene el flip flop va a la señal /E de la EPROM, entonces si este bit esta en 1 y hacemos un assert a la linea CCTL, deshabilitamos la memoria.
el cartucho AtariMAX funciona de igual forma, salvo que en la ecuacion de seleccion de pagina incluye a la señal la señal R/W del cart (le hace un equivalente a un OR al final de la ecuacion del turbocart), entonces una imagen de AtariMAX funciona OK en un cart TurboSoftware, pero no al reves, y tenemos que parchar.
que se parcha? la posicion A5D6h y A5FFh que este caso son lectura (LDA) por escritura (STA), para agregar el assert a la señal /W que espera el cart AtariMAX
Código: Seleccionar todo
ROM:A5C4 selecciona_pagina: ROM:A5C4 48 PHA ROM:A5C5 8A TXA ROM:A5C6 48 PHA ROM:A5C7 08 PHP ROM:A5C8 78 SEI ROM:A5C9 AD 0E D4 LDA byte_D40E ROM:A5CC 48 PHA ; push NMIEN ROM:A5CD A9 00 LDA #0 ROM:A5CF 8D 0E D4 STA byte_D40E ROM:A5D2 AE A9 0A LDX $AA9 ; $AA9 retiene la pagina a la que queremos cambiar ROM:A5D2 ; 1...10h (en vez de 0...Fh ehhhhhh :S) ROM:A5D5 CA DEX ROM:A5D6 BD 00 D5 LDA $D500,X ; seleccionamos la pagina ROM:A5D9 AD 13 D0 LDA byte_D013 ROM:A5DC 8D FA 03 STA $3FA ROM:A5DF AD B1 0A LDA $AB1 ROM:A5E2 8D EB 03 STA $3EB ROM:A5E5 A9 01 LDA #1 ROM:A5E7 8D F8 03 STA $3F8 ROM:A5EA 68 PLA ; pop NMIEN ROM:A5EB 8D 0E D4 STA byte_D40E ROM:A5EE 28 PLP ROM:A5EF 68 PLA ROM:A5F0 AA TAX ROM:A5F1 68 PLA ROM:A5F2 60 RTS ROM:A5F2 ; End of function selecciona_pagina
Código: Seleccionar todo
ROM:A5F3 deshabilita_cart: ROM:A5F3 48 PHA ROM:A5F4 08 PHP ROM:A5F5 78 SEI ROM:A5F6 AD 0E D4 LDA byte_D40E ROM:A5F9 48 PHA ; push NMIEN ROM:A5FA A9 00 LDA #0 ROM:A5FC 8D 0E D4 STA byte_D40E ROM:A5FF AD 10 D5 LDA byte_D510 ; bit 4 va al /E de la EPROM, ROM:A5FF ; por lo tanto aqui se deshabilita la EPROM ROM:A602 AD 01 D3 LDA byte_D301 ROM:A605 09 02 ORA #2 ROM:A607 8D 01 D3 STA byte_D301 ; PORTB|=2; Deshabilita ROM de BASIC ROM:A60A AD 13 D0 LDA byte_D013 ROM:A60D 8D FA 03 STA $3FA ROM:A610 AD B1 0A LDA $AB1 ROM:A613 8D EB 03 STA $3EB ROM:A616 A9 01 LDA #1 ROM:A618 8D F8 03 STA $3F8 ROM:A61B 68 PLA ROM:A61C 8D 0E D4 STA byte_D40E ; pop NMIEN ROM:A61F 28 PLP ROM:A620 68 PLA ROM:A621 60 RTS ROM:A621 ; End of function deshabilita_cart
si no me equivoco (y no tengo alucinaciones) el procedimiento para un cart C (o era E?) era levente distinto y se necesita poner unas instrucciones adicionales en vez de solo parchar, pero dejomoslo hasta aqui mejor.
ojala algo se entienda
Yap cuando lo encuentre le hecho una mirá.
- ZZT
- Site Admin
- Mensajes: 10900
- Registrado: Mar Nov 07, 2006 2:45 pm
- Reputación: 10
- Ubicación: La Florida-Santiago-Chile
- Contactar:
Re: Presentando la nueva seccion de cartridges Turbosoft
ta papita washalin, el willy me enseño años atras como funcionaba el cartridge y gracias a el pude entender como andaba ese lio del bankswitch.
Yo puedo aportar con:
Recordemos que TODOS los chips trabajan o procesan voltajes y no entienden ni wea que es lo que en electrónica, o el mundo computín, llamamos "uno" y "cero". Estos son los únicos estados posibles en el sistema binario pq 1 lógico es igual a 3.5volts (más o menos) y 0 lógico es igual a cero volt. No hay valores intermedios, solo voltaje o no voltaje. Esa es la papa principal que deben entender, saber y recordar.
Luego de ese mini repaso..... en el circuito del Atari, hay una línea que se llama RD5 que esta conectada al puerto del cart. Si su valor es "uno" le indica al sistema operativo del Atari si hay cartridge presente y que lo ejecute.
En el circuito cartucho hay una serie de flip flops tipo D, que en una definición bien simple son como una mini celda de memoria que conserva su estado hasta que lo cambiemos. En este caso estos FF tienen una red resistencia condensador que los ponen a cero (reset) al momento de encender el compu, y dado que uno de los FF es el que da el pase gol a RD5 necesitamos negar o invertir ese cero para que RD5 sea uno y el Atari parta desde el soft contenido en la eprom, eso lo hace una compuerta lógica. Si RD5 esta a cero, el Atari no sabe que hay cart. insertado y va a botear desde otro dispositivo, disketera, casetera o el basic.
Ahora, ¿como se manda el dato que queremos que los flip flop guarden?:
Otra línea importante es CCTL, que en buenas cuentas se pone en 1 mientras hacemos una llamada digamos POKE en basic o STA en asm. entre el rango de D500 a D5FF en hexadecimal, 54528 a 54783 en decimal, cuando el procesamiento de la instrucción termina CCTL vuelve a cero hasta que se haga otro Poke, por lo tanto la variación de 1 a 0 dura una pendejesima de milisegundos . ¿La utilidad de esto? CCTL esta conectada a la pata que hace cambiar los flip flops, osea que cuando hacemos la llamada el cambio de CCTL hace "memorizar" a los Flip flop el estado de las direcciones que estan conectadas a cada uno de ellos ==> A0 A1 A2 A3 ..... etc, En el caso de los cartridges de 1mega byte usamos hasta A7. ¿pq se hace esto? Por que los carts originales eran de solo 8Kilos, y por lo tanto en el conector del cartridge solo estan las direcciones desde A0 a A12 y una eproms más grande tiene más direcciones A13 A14... hasta A19, obvio, para acceder a las memoria extra. Eso hacen los flips, conservan el estado que le enviamos haciendo POKE o STA, y sus salidas se conectan a las patas de la eprom y se transforman en las direcciones extras faltantes en el conector y asi podemos leer eproms mas grandes que 8kilos.
Todo el juego esta en hacer el POKE o STA en el momento preciso para ir subiendo el valor de las direcciones y asi elegimos a piacere el banco que queremos acceder. Esto tb es super útil para interfasear el Atari, juegos de luces, comunicaciones, grabador de eprom, cualquier hardware que se nos ocurra, con un mímino de componentes, tal como yo lo llevo haciendo desde los 80's.
A ver si te sirve esto para enteder lo que explica el xt5, ambas cosas son similares.
Yo puedo aportar con:
Recordemos que TODOS los chips trabajan o procesan voltajes y no entienden ni wea que es lo que en electrónica, o el mundo computín, llamamos "uno" y "cero". Estos son los únicos estados posibles en el sistema binario pq 1 lógico es igual a 3.5volts (más o menos) y 0 lógico es igual a cero volt. No hay valores intermedios, solo voltaje o no voltaje. Esa es la papa principal que deben entender, saber y recordar.
Luego de ese mini repaso..... en el circuito del Atari, hay una línea que se llama RD5 que esta conectada al puerto del cart. Si su valor es "uno" le indica al sistema operativo del Atari si hay cartridge presente y que lo ejecute.
En el circuito cartucho hay una serie de flip flops tipo D, que en una definición bien simple son como una mini celda de memoria que conserva su estado hasta que lo cambiemos. En este caso estos FF tienen una red resistencia condensador que los ponen a cero (reset) al momento de encender el compu, y dado que uno de los FF es el que da el pase gol a RD5 necesitamos negar o invertir ese cero para que RD5 sea uno y el Atari parta desde el soft contenido en la eprom, eso lo hace una compuerta lógica. Si RD5 esta a cero, el Atari no sabe que hay cart. insertado y va a botear desde otro dispositivo, disketera, casetera o el basic.
Ahora, ¿como se manda el dato que queremos que los flip flop guarden?:
Otra línea importante es CCTL, que en buenas cuentas se pone en 1 mientras hacemos una llamada digamos POKE en basic o STA en asm. entre el rango de D500 a D5FF en hexadecimal, 54528 a 54783 en decimal, cuando el procesamiento de la instrucción termina CCTL vuelve a cero hasta que se haga otro Poke, por lo tanto la variación de 1 a 0 dura una pendejesima de milisegundos . ¿La utilidad de esto? CCTL esta conectada a la pata que hace cambiar los flip flops, osea que cuando hacemos la llamada el cambio de CCTL hace "memorizar" a los Flip flop el estado de las direcciones que estan conectadas a cada uno de ellos ==> A0 A1 A2 A3 ..... etc, En el caso de los cartridges de 1mega byte usamos hasta A7. ¿pq se hace esto? Por que los carts originales eran de solo 8Kilos, y por lo tanto en el conector del cartridge solo estan las direcciones desde A0 a A12 y una eproms más grande tiene más direcciones A13 A14... hasta A19, obvio, para acceder a las memoria extra. Eso hacen los flips, conservan el estado que le enviamos haciendo POKE o STA, y sus salidas se conectan a las patas de la eprom y se transforman en las direcciones extras faltantes en el conector y asi podemos leer eproms mas grandes que 8kilos.
Todo el juego esta en hacer el POKE o STA en el momento preciso para ir subiendo el valor de las direcciones y asi elegimos a piacere el banco que queremos acceder. Esto tb es super útil para interfasear el Atari, juegos de luces, comunicaciones, grabador de eprom, cualquier hardware que se nos ocurra, con un mímino de componentes, tal como yo lo llevo haciendo desde los 80's.
A ver si te sirve esto para enteder lo que explica el xt5, ambas cosas son similares.
Re: Presentando la nueva seccion de cartridges Turbosoft
Merme si eso que estay explicando es la parte fácil.
Lo que pasa es que con el alzheimer no tengo en la memoria que direcciones apuntan a que patas de los procesadores o puertos o memoria o cartdrige. Me cachay?
Si el código ta clarito. Lo que tu explicai también pero yo me manejo a punta de puro Mapping si no, no cacho que es lo que estay exitando
Acuerdate que yo metía juegos enteros en los bancos de memoria colando el cargador bajo la Rom del Atari, e iba cargando el juego en los bancos de memoria a punto de puso Assembler.
A proposito, ya arreglaste lo de editar?
SIIIIIIIIIIII LO ARREGLÓOOOOOOO
Lo que pasa es que con el alzheimer no tengo en la memoria que direcciones apuntan a que patas de los procesadores o puertos o memoria o cartdrige. Me cachay?
Si el código ta clarito. Lo que tu explicai también pero yo me manejo a punta de puro Mapping si no, no cacho que es lo que estay exitando
Acuerdate que yo metía juegos enteros en los bancos de memoria colando el cargador bajo la Rom del Atari, e iba cargando el juego en los bancos de memoria a punto de puso Assembler.
A proposito, ya arreglaste lo de editar?
SIIIIIIIIIIII LO ARREGLÓOOOOOOO
- fcatrin
- hard player
- Mensajes: 470
- Registrado: Jue Abr 10, 2008 2:45 pm
- Reputación: 5
- Ubicación: Quilpué, Chile
- Contactar:
Re:
Eso podria tener estas explicaciones:BonesCollector escribió:
Turbosoft hizo formato de carts , las placas , las cajas y las etiquetas todo en Chile . Porque pusieron juegos tan malos y tan buenos en un mismo cart es algo que nunca sabremos .
La técnica: Los juegos buenos ocupan mas espacio. Si querías poner varios juegos, no podían ser todos grandes.
La comercial: Si ponías un juego bueno por cartucho, podías vender más cartuchos diferentes.
- ZZT
- Site Admin
- Mensajes: 10900
- Registrado: Mar Nov 07, 2006 2:45 pm
- Reputación: 10
- Ubicación: La Florida-Santiago-Chile
- Contactar:
Re: Re:
Y en algunos pusieron juegos malos, pq son los que no tenían problemas de copyright. Si se fijan no hay casi ningún juego de casa conocida en los cartuchos de turbo o prisma.fcatrin escribió:Eso podria tener estas explicaciones:BonesCollector escribió:
Turbosoft hizo formato de carts , las placas , las cajas y las etiquetas todo en Chile . Porque pusieron juegos tan malos y tan buenos en un mismo cart es algo que nunca sabremos .
La técnica: Los juegos buenos ocupan mas espacio. Si querías poner varios juegos, no podían ser todos grandes.
La comercial: Si ponías un juego bueno por cartucho, podías vender más cartuchos diferentes.