Emuladores hechos en "Basic"

Foro dedicado a la programación en todo tipo de sistemas clásicos.
jepalza

Emuladores hechos en "Basic"

Mensajepor jepalza » 01 Oct 2012, 20:03

Como veo que a algunos os ha interesado el tema de la emulación de sistemas retro en el lenguaje Basic, he recopilado aqui algunos de los que tengo o que he encontrado por la red, y a ser posible, con código fuente, que es mas entretenido.
Algunos, los he convertido a lenguaje mas moderno, el FreeBasic, por diversión, o para poder disponer de la emulación de la CPU en otros emuladores, y los tengo guardaditos en mis HD.

Los que no regalan el código fuente, quedará la duda de si están hechos en basic puro, o si llevan partes de C o ASM.

CPU Z80:
GB --> GameBoy Emulador, incluye fuente en VBasic
ZBOY --> Emulador de GB que empezó siendo Basic, y ha acabado siendo "C", pero los fuentes Basic viejos, aún los entregan.
VBSpec --> Emula un Spectrum "cuasi" perfecto, con fuentes en Vbasic.

CPU 6502:
BasicNES --> Nintendo NES con fuentes.
NESEM --> Otro emulador de NES,con fuentes, pero en Qbasic

CPU 6809:
Thomson Mo5 --> Emulador de Thomson Mo5 de cosecha propia, mio 100%, en freebasic con fuentes.

CPU 8086:
PCEmu --> Emulador de PC 8086 modo CGA en Visual Basic, con fuentes. Pero la última versión, lleva mucho de "C" y no entrega esas fuentes (las viejas solo Basic sí)
PC8086 --> otro que acabo de encontrar, pero no lo he probado.

CPU CHIP8:
VBCHIP --> incluye el fuente en VB.

CPU 6510:
C64 --> este si tiene el fuente, pero no lo encuentro ahora mismo por el foro.
VB64 --> C64 en VisualBasic, pero no "regala" el fuente.

Como veis hay mucho donde elegir. Hay mas variante, pero ahora no recuerdo dónde las ví.
Me falta uno de Apple-II en Qbasic, pero no encuentro la página.

Algunos los he convertido de VisualBasic a Freebasic para poder emular otros sistemas a mi gusto, y los otros, los tengo tal cual, originales en VisualBasic.
(por ejemplo, el de Spectrum, lo he convertido a FreeBasic, quitando cosas innecesarias, justo para jugar sin florituras)

De mi emulador de 6809 ( por cierto, el único en el mundo, nadie mas ha hecho uno en Basic) aparte del Thomson, estoy haciendo un emulador del juego arcade "Star Rider", famoso juego LaserDisc al estilo del "Drangon's Lair", enterito en Basic, incluida la emulación del Video LaserDisc en tiempo real, y va como un tiro, pero tengo problemas y no logro avanzar la emulación, y lo tengo parado. Dejo algún vídeo de él.





Aqui, con video de fondo en tiempo real, pero desfasado respecto al juego:

Avatar de Usuario
Kusfo
MSX Turbo R
MSX Turbo R
Mensajes: 433
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: 5 veces
Gracias recibidas: 29 veces

Re: Emuladores hechos en "Basic"

Mensajepor Kusfo » 01 Oct 2012, 20:42

Juas, pues no conocía ni la mitad de ellos!!

Muchas gracias!!
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

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: Emuladores hechos en "Basic"

Mensajepor mentalthink » 01 Oct 2012, 20:48

Bua Jepalza te has lucido!!! porque aquí no se ponen Karmas si no te pongo "un puñaó"...

Vaya info... gracias!!!

jepalza

Re: Emuladores hechos en "Basic"

Mensajepor jepalza » 01 Oct 2012, 21:07

Ya veréis, si conseguís compilar alguno, lo divertido que es modificar las cosas para que hagan lo que tú quieras. Yo por ejemplo, como diversión, convertí el emulador de Spectrum de VB a FB y le metí un rollo para localizar vidas infinitas a los juegos. No funciona nada bien, pero como diversión, ha sido todo un reto.

Y el placer que produce ver resultados a medida que avanzas en la emulación, eso no tiene precio. Me ha ocurrido en docenas de ocasiones, pero especialmente, en el emulador del StarRider al conseguir que el vídeo se muestre de fondo junto a los gráficos (con la trasparencia): cuando lo logré, falto poco para derretirme en la mesa.... <rX

Avatar de Usuario
antoniovillena
Amiga 1200
Amiga 1200
Mensajes: 2013
Registrado: 16 Abr 2012, 21:22
Gracias recibidas: 8 veces

Re: Emuladores hechos en "Basic"

Mensajepor antoniovillena » 01 Oct 2012, 22:12

Esto le viene bien tanto a los que se quieren iniciar en el mundo de la emulación como a los que ya están y quieren saber cómo se emula una máquina en concreto con un código legible. Aunque todo depende de cómo lo organice el programador, normalmente los fuentes en Java y en Basic son más asequibles que los que están en C o C++.

Avatar de Usuario
Namek
Atari 1040 STf
Atari 1040 STf
Mensajes: 838
Registrado: 11 Jul 2011, 13:13
Gracias dadas: 18 veces
Gracias recibidas: 63 veces

Re: Emuladores hechos en "Basic"

Mensajepor Namek » 02 Oct 2012, 02:23

Yo empece mi emulador de Spectrum en AMOS BASIC en el Amiga 500, luego lo pase a BLITZ BASIC en el Amiga 1200 y por ultimo converti todo el codigo de emulacion del Z80 y la pantalla a ensamblador del motorola 68000, mas tarde pude versionalo para PALM OS y ATARI ST utilizando el mismo codigo ASM de la CPU. Que tiempos aquellos y que buenos ratos programando y aprendiendo... :D

jepalza

Re: Emuladores hechos en "Basic"

Mensajepor jepalza » 02 Oct 2012, 07:15

Ademas, todos sabemos de la dificultad del C++ (yo lo tengo atragantado, y no pasa, ni con aguja de punto de cruz) o de lo liante (dentro de lo fácil) del "C" puro, frente a la sencillez de toda la vida del Basic, y como hoy día ya no apenas diferencias en velocidad y versatilidad de los Basic frente al "C" (salvando distancias), con un Basic de ahora y la velocidad de los PC actuales, puedes hacer virguerías programando Basic.
Incluso, juegos 3D al estilo "Doom", y sin complicarse la cabeza en rollos de herencias, polimorfismos, clases y la madre que los ...

Y soy de los defensores acérrimos del Basic y su potencial, por eso, me gusta demostrar, que el Basic puede vivir junto al "C" sin echar nada de menos, y meterme con retos que pocos harían, por no comerse la cabeza depurando un código, buscando esas décimas de segundo necesarias, que el "C++" no necesita.

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: Emuladores hechos en "Basic"

Mensajepor Hark0 » 02 Oct 2012, 07:44

Muchisimas gracias por todo los enlaces... con todo el material que has puesto, creo que tengo para no pocos dias de "entretenimiento"....

=D>

(actualmente utilizando GLBasic.... ;-), a ver si soy capaz de adaptar/reprogramar/portar "algo" de todo este material a GLB... ;-D


Saludos.
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA.


Volver a “Programación”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 32 invitados