Emulador de Arcade Galaxian escrito en FreeBasic

Foro dedicado a la emulación de sistemas clásicos en el PC o en otros sistemas.
Avatar de Usuario
radastan
Amiga 2500
Amiga 2500
Mensajes: 4542
Registrado: 11 Jun 2007, 19:29
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Sega Genesis/Megadrive
Primera consola: TV Games/Pong Clone
Ubicación: Córdoba
Gracias dadas: 9 veces
Gracias recibidas: 40 veces
Contactar:

Re: Emulador de Arcade Galaxian escrito en FreeBasic

Mensajepor radastan » 03 Dic 2013, 16:23

jepalza escribió:La última vez que tuve que optimizar un código, fué cuando hice el Abracadabra de Amstrad CPC


:shock:

Joder, me entero de rebote que hiciste ese juego (la versión Amstrad me refiero). ¿En qué otros juegos estuviste metido?
Yo tengo una máquina del tiempo, se llama ZX Spectrum, siempre me devuelve a los buenos momentos.
(\.../) (\.../) (\.../) (\.../)
( *.*) ('.'= ) ('.'= ) ('.'= )
(")_(") (")_(") (")_(") (")_(")
╔═══╦═══╦═══╦══╦══╗
║╔═╗║╔═╗║╔═╗╠╣╠╩╣╠╝
║║─║║╚══╣║─╚╝║║─║║
║╚═╝╠══╗║║─╔╗║║─║║
║╔═╗║╚═╝║╚═╝╠╣╠╦╣╠╗
╚╝─╚╩═══╩═══╩══╩══╝

jepalza

Re: Emulador de Arcade Galaxian escrito en FreeBasic

Mensajepor jepalza » 03 Dic 2013, 19:39

radastan escribió:
jepalza escribió:La última vez que tuve que optimizar un código, fué cuando hice el Abracadabra de Amstrad CPC


:shock:

Joder, me entero de rebote que hiciste ese juego (la versión Amstrad me refiero). ¿En qué otros juegos estuviste metido?



¡NO JO, TIO! Nos conocemos de media vida y no sabías que hice el Abracadabra... :boxeo:
También ayudé en el juego de Iñigo Ayo (y toda la tropa) "Khazzad Dumm", llevando las bebidas y recogiendo las babas que caían. Y poco mas, comercialmente hablando. E revistas, hice programas para Amstrad User (un programa de portada, un desensamblador Z80 en basic) y varios en Microhobby semanal, de los de 10000pts y 15000pts... :santo:
(sin contar la media docena de emuladores ;-) )

Avatar de Usuario
Hark0
Amiga 1200
Amiga 1200
Mensajes: 1695
Registrado: 11 Jul 2012, 23:44
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: (Otro)
Primera consola: (Otro)
Ubicación: Cornellà de Llobregat - Barcelona
Contactar:

Re: Emulador de Arcade Galaxian escrito en FreeBasic

Mensajepor Hark0 » 03 Dic 2013, 20:00

Preparando bateria de preguntas... :P que desde la tabla es un peñazo...
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA.

Avatar de Usuario
zup
Amiga 2500
Amiga 2500
Mensajes: 3013
Registrado: 04 Sep 2009, 20:07
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Nintendo DS/3DS
Primera consola: Nintendo GameBoy
Ubicación: Navarra
Gracias dadas: 86 veces
Gracias recibidas: 359 veces
Contactar:

Re: Emulador de Arcade Galaxian escrito en FreeBasic

Mensajepor zup » 03 Dic 2013, 20:33

jepalza escribió:
radastan escribió:
jepalza escribió:La última vez que tuve que optimizar un código, fué cuando hice el Abracadabra de Amstrad CPC


:shock:

Joder, me entero de rebote que hiciste ese juego (la versión Amstrad me refiero). ¿En qué otros juegos estuviste metido?



¡NO JO, TIO! Nos conocemos de media vida y no sabías que hice el Abracadabra... :boxeo:
También ayudé en el juego de Iñigo Ayo (y toda la tropa) "Khazzad Dumm", llevando las bebidas y recogiendo las babas que caían. Y poco mas, comercialmente hablando. E revistas, hice programas para Amstrad User (un programa de portada, un desensamblador Z80 en basic) y varios en Microhobby semanal, de los de 10000pts y 15000pts... :santo:
(sin contar la media docena de emuladores ;-) )


Me acabas de tocar la moral a base de bien.

Como ya sabéis, me dedico a ratos a convertir juegos de Spectrum para que funcionen en el +3e (desde disquete o desde disco duro/flash). En la próxima actualización (que ya está en el buzón del Trastero del Spectrum, pendiente de que lo pongan en la página) hay un disco con los siguientes juegos:

- El Almacén
- Frogger
- Khazzad-Dum

¿La etiqueta del disco? Colección Jepalza.

Y ahora me dices que tienes más juegos de los que no te atribuyen nada en WOS

A ver cómo lo arreglo ahora.

P.D.: Tengo localizado a alguien por La Rioja que trabajó en algunos juegos de Dinamic. Me dijo que le habían contactado para alguna entrevista, pero pasó del tema...
I have traveled across the universe and through the years to find Her. Sometimes going all the way is just a start.
Además vendo cosas!

Avatar de Usuario
mentalthink
Amiga 2500
Amiga 2500
Mensajes: 2840
Registrado: 11 Abr 2010, 15:06
Gracias dadas: 45 veces
Gracias recibidas: 14 veces

Re: Emulador de Arcade Galaxian escrito en FreeBasic

Mensajepor mentalthink » 03 Dic 2013, 22:25

Pues te lo agradezco un montón que haya puesto el código siendo una versión temprana...

De momento me he mirao la memoria, y ya me encuentro con el primer problema en GLbasic PEEK. se que hay una libreria que hizo uno de los Masters de GLbasic, pero no sabría muy bien como irá...

De moemnto lo que te digo gracias porque estó aunque no consiga hacer un emulador, me parece que me va a ser más util que el copón para aprender cosas majas.

jepalza

Re: Emulador de Arcade Galaxian escrito en FreeBasic

Mensajepor jepalza » 04 Dic 2013, 07:28

Zup, lo primero es que ni sabía que me habían puesto en el WOS, primera notica, para que veas lo que me entero de "mi mismo".

Lo segundo, del Khazzad Dumm, primordialmente lo hizo mi amigo Iñigo Ayo, (ademas, lo pone en la carátula de la cinta), el resto de personas fuimos meros espectadores. Eso sí, que tiene su merito estar delante de un juego que se está desarrollando en la habitación de un amigo, (estabamos unos 5 o 6 a la vez), y luego verlo publicado. Tuvimos que ir Iñigo y yo cuando eramos menores de edad (yo tendría 17 años e Iñigo 14 o 15) a Barcelona a reclamar los derechos del Juego, por que no lo querían distribuir. Lo conseguimos, y se publicó luego por otra empresa, por lo que existen dos variantes del juego, una nunca publicada (que guardo con cariño como un incunable) y la comercial.

En el WOS ponen las tres aportaciones a Spectrum, pero tengo dos mas en Amstrad CPC, como el desensamblador Z80 de la revista Amstrad User, que ademas salió en portada, y el juego Abracadabra, la versión del mismo nombre del Spectrum que hizo Jorge Blécua, el autor del "Don quijote". (juego que hice en un 98% en Basic)

Y el resto, no cuenta, son los emuladores que hacía en los 90, como la serie "Mr. Do's" (4 emuladores), el City Connection, el Lady Bug, o el único que hice el MAME, el "Space Balls". En el MESS he hecho algunos pinitos, como el "Prestige elite" o drivers como los del Atari Portfolio.

Nota: me acabo de acordar "con cariño" de un truco que hice en la revista Amstrad user para poner los caracteres del Spectrum en el CPC, que para hacerlo, volqué el contenido de la ROM del Spectrum en una cinta, y con muchos trucos, conseguí leer ese contenido en el Amastrad CPC y hacer el truquillo, y que los de la revista, cuando lo publicaron, dijeron que estaban muy bien, excepto el símbolo del "$" que parecía mas cuadrado de lo normal..... pero me hizo gracia, por que era una copia exacta al 100% del Spectrum, no los rehice desde cero uno a uno, pero ellos pensaron que sí, y que el $ me salió mal.... anécdotas que se cuentan.

Avatar de Usuario
Hark0
Amiga 1200
Amiga 1200
Mensajes: 1695
Registrado: 11 Jul 2012, 23:44
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: (Otro)
Primera consola: (Otro)
Ubicación: Cornellà de Llobregat - Barcelona
Contactar:

Re: Emulador de Arcade Galaxian escrito en FreeBasic

Mensajepor Hark0 » 04 Dic 2013, 08:20

mentalthink escribió:Pues te lo agradezco un montón que haya puesto el código siendo una versión temprana...

De momento me he mirao la memoria, y ya me encuentro con el primer problema en GLbasic PEEK. se que hay una libreria que hizo uno de los Masters de GLbasic, pero no sabría muy bien como irá...

De moemnto lo que te digo gracias porque estó aunque no consiga hacer un emulador, me parece que me va a ser más util que el copón para aprender cosas majas.


La memoria en GLB se puede "montar" muy facilmente con una matriz de 65536 bytes, y luego crear unas funciones peek/poke sin problemas... es más, se puede acceder a la zona de la memoria que corresponde al video y manipularla para que se comporte como una pantalla de spectrum... luego se "vuelca" esa zona de memoria a un sprite y se pinta el sprite...

La parte mas interesante para mi quizas, es el fichero z80.bas... la madre del cordero vamos :P

Tengo montado un emulador "tonto" de spectrum con glb (creo que te envie algopor mail) que tiene su ram montada y su zona de video implementada... carga la rom original y se "queda" haciendo un loop tonto sin hacer nada, ya que me quede en la "parte" de implementar la interpretacion de los opcodes... :P

-- Actualizado 04 Dic 2013, 10:20 --

@Jepalza:

He conseguido compilarlo usando el método que comentas... olvidarme de main.bas y cargando spectrum.bas, funciona sin problemas... ;)

Voy a meterme en el código... ya te asaltaré a preguntas :P

:shock: Alucinando estoy sobre lo que comentas de CPC y épocas antiguas... entrevista en Retro entre amigos y/o Mundo del Spectrum YA :mrgreen:
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA.

Avatar de Usuario
Kusfo
MSX Turbo R
MSX Turbo R
Mensajes: 437
Registrado: 17 Jul 2012, 13:05
Sistema Favorito: Amstrad CPC
primer_sistema: Amstrad CPC
consola_favorita: Sega Master System
Primera consola: Sega Master System
Ubicación: Warcelona
Gracias dadas: 6 veces
Gracias recibidas: 33 veces

Re: Emulador de Arcade Galaxian escrito en FreeBasic

Mensajepor Kusfo » 04 Dic 2013, 10:20

jepalza escribió:Si tanto te gusta, lo siguiente, puede ser un emulador de 6510 (commodore 64), otro de 6502 (NES), otro mas de Z80 (Gameboy) y de Sega Master System, uno de Apple-ii (inacabado, solo modo texto) otro de 6809 (Thomson M05)..... Vamos, que será por emuladores en freebasic. Algunos los he "trasferido" de otros sistemas (hechos por otras personas, adaptados por mi), y otros los he hecho yo desde cero, como el del 6809.
Tengo pendiente el del 68000 para un Macintosh Plus, que se me resiste (no por velocidad, sino por complejidad)

¿se nota que me gusta el basic? \:D/


Oh! yo quiero ver ese emulador de Master System cuando lo tengas! XD
Amstrad CPC6128 + Spectrum +2A + SONY MSX2 HB-F1 + Commodore Amiga 500 + Sega SC-3000 + Sega Mark III + Sega Master System + Sega Megadrive + Sega Saturn+ Sega Dreamcast + Nintendo Nes + Super Nintendo + Nintendo 64 + Nintendo Gamecube + PC-Engine

jepalza

Re: Emulador de Arcade Galaxian escrito en FreeBasic

Mensajepor jepalza » 04 Dic 2013, 11:14

Hark0 escribió: entrevista en Retro entre amigos y/o Mundo del Spectrum YA :mrgreen:

Ya me hicieron algunas, AQUI yAQUI (Bueno, la de Mon no la encuentro, pero si su blog que habla sobre ello. Por cierto, acabo de enterarme que "El almacén" fué uno de los mejores juegos de MircroHobby :oops: )

-- Actualizado 04 Dic 2013, 11:15 --

Kusfo escribió:Oh! yo quiero ver ese emulador de Master System cuando lo tengas! XD


Ya busco un hueco, que ando con muchas cosas ahora. Por ahora quiero depurar el emulador del Galaxian y pongo avances sobre él.

-- Actualizado 04 Dic 2013, 12:55 --

He actualizado el fuente del emulador. Ahora ya se puede jugar medianamente. El enlace está en el primer mensaje.
Lógicamente, va sin ROMs , pero los nombres de cada fichero si los he incluído, para que se vea que debe ir en cada carpeta.

Avatar de Usuario
Hark0
Amiga 1200
Amiga 1200
Mensajes: 1695
Registrado: 11 Jul 2012, 23:44
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: (Otro)
Primera consola: (Otro)
Ubicación: Cornellà de Llobregat - Barcelona
Contactar:

Re: Emulador de Arcade Galaxian escrito en FreeBasic

Mensajepor Hark0 » 05 Dic 2013, 10:41

jepalza escribió:
Hark0 escribió: entrevista en Retro entre amigos y/o Mundo del Spectrum YA :mrgreen:

Ya me hicieron algunas, AQUI yAQUI (Bueno, la de Mon no la encuentro, pero si su blog que habla sobre ello. Por cierto, acabo de enterarme que "El almacén" fué uno de los mejores juegos de MircroHobby :oops: )

-- Actualizado 04 Dic 2013, 11:15 --

Kusfo escribió:Oh! yo quiero ver ese emulador de Master System cuando lo tengas! XD


Ya busco un hueco, que ando con muchas cosas ahora. Por ahora quiero depurar el emulador del Galaxian y pongo avances sobre él.

-- Actualizado 04 Dic 2013, 12:55 --

He actualizado el fuente del emulador. Ahora ya se puede jugar medianamente. El enlace está en el primer mensaje.
Lógicamente, va sin ROMs , pero los nombres de cada fichero si los he incluído, para que se vea que debe ir en cada carpeta.


Voy a bajarlo...

Ya tengo todo el "kit" montado... he bajado los help y toda la puñeta, me he impreso el librico que ronda por ahí "basico" de 256 páginas, etc... y todo OK, compilando el spectrum.bas del otro dia sin problemas... que por cierto me va el jet set villy a 2000 por hora :meparto:

Me esta gustando esto del Freebasic, tras leerme la documentación impresa ME DOY CUENTA QUE ES UNA EVOLUCION DEL QUICKBASIC :shock:

A desempolvar todos mis proyectos viejunos de QB45... ;)

-- Actualizado 05 Dic 2013, 15:10 --

@Jepalza, acerca del emulador de Spectrum para FB (creo que merecería otro hilo aparte, tu verás). ;)

Primera pregunta:

En el fichero principal spectrum.bas después de inicializar todo se llama a la función execute que está en z80.bas.

Entiendo que esa función es el main loop...

Observo esto:

Código: Seleccionar todo

If deb then
           if inkey$=" " then BreakPoint=1
          if BreakPoint=1 then sleep
     
         locate 1,1
         print "PC="+hex$(regpc)+" Byte:"+hex$(peekb(regpc))+"  Word+1:"+hex$(peekw(regpc+1))+"    "
         print "SP="+hex$(regsp)+"    "
         bla
         bla
         ....


Por mucho que cambie el valor de deb a 0/1/2... no veo nada...

¿donde está pintando esas variables?
¿doble buffer?
¿se puede pasar "delante" o a la misma ventana main de speccy?

Saludos, y lo dicho si hay que crear un hilo nuevo "ZX Spectrum en Freebasic", por mi encantado 8-)
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA.


Volver a “Emuladores”

¿Quién está conectado?

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