[Proyecto] Compilador Z80 Pascal

Si tienes alguna duda y crees que alguien podría resolverla, ponla aquí. || If you have any doubt about programming, post it here.

Moderador: CEZ

Responder
Ñuño Martínez
16 bits
16 bits
Mensajes: 65
Registrado: 12 Ene 2009 16:45
Ubicación: Ciudad Catedral, Españistán

[Proyecto] Compilador Z80 Pascal

Mensaje por Ñuño Martínez »

Ya hay gente que sabe de este proyecto, pero así tengo una alternativa en castellano al hilo que creé en su momento en Pascal Game Development. Primero, una pequeña introducción.

En una frase, Z80 Pascal será un compilador Pascal para dispositivos que utilicen el microprocesador Z80 o cualquiera de sus clones o sucesores compatibles (como el eZ80 o el Z380). La cosa empezó porque quería hacer un juego para MSX, pero después de tanto tiempo programando en C, Object Pascal y PHP en entornos más modernos, volver al BASIC y al ensamblador es muy duro. Encontré compiladores de C y Pascal, pero o son comerciales o están más o menos abandonados, así que me he liado la manta a la cabeza y en esto estoy.

Además del compilador tengo pensado crear un entorno de desarrollo (IDE) con alguna utilidad para, por ejemplo, incrustar los datos de gráficos, sprites, mapas, música y demás. También tengo la intención de diseñar las bibliotecas de funciones de forma que los programas diseñados para MSX o ZX puedan compilarse con Free Pascal o Delphi con pocos o ningún cambio.

Por ahora tengo un editor con highlighting (arrastrar un par de componentes Lazarus y poco más :mrgreen: ) y un analizador capaz de decirte los errores que tiene el código fuente, aunque da por válidas instrucciones en ensamblador como CALL [IX+$FFFF], NZ :-" (eso sí, en Pascal no te pasa ni una... creo ).

El proyecto está hospedado en SourceForge, concretamente en http://z80-pascal.sourceforge.net/. Por ahora sólo está disponible por Subversion, y deberás compilarlo todo tú mismo. Necesitarás Free Pascal para el compilador, aunque debería funcionar también con Delphi o Turbo Delphi (este último es gratuito) y tal vez incluso con el GNU/Pascal. El intento de IDE solamente compila utilizando Lazarus.

Bueno, creo que ya lo he dicho todo. Iré dejando caer mensajes en este hilo según vaya consiguiendo hitos importantes, y si veis alguna pregunta mía en el foro de programación ya sabéis para qué es.
cybernoid
16 bits
16 bits
Mensajes: 63
Registrado: 19 Feb 2008 17:48
Contactar:

Re: [Proyecto] Compilador Z80 Pascal

Mensaje por cybernoid »

Ñuño Martínez escribió:Ya hay gente que sabe de este proyecto, pero así tengo una alternativa en castellano al hilo que creé en su momento en Pascal Game Development. Primero, una pequeña introducción.

En una frase, Z80 Pascal será un compilador Pascal para dispositivos que utilicen el microprocesador Z80 o cualquiera de sus clones o sucesores compatibles (como el eZ80 o el Z380). La cosa empezó porque quería hacer un juego para MSX, pero después de tanto tiempo programando en C, Object Pascal y PHP en entornos más modernos, volver al BASIC y al ensamblador es muy duro. Encontré compiladores de C y Pascal, pero o son comerciales o están más o menos abandonados, así que me he liado la manta a la cabeza y en esto estoy.

Además del compilador tengo pensado crear un entorno de desarrollo (IDE) con alguna utilidad para, por ejemplo, incrustar los datos de gráficos, sprites, mapas, música y demás. También tengo la intención de diseñar las bibliotecas de funciones de forma que los programas diseñados para MSX o ZX puedan compilarse con Free Pascal o Delphi con pocos o ningún cambio.

Por ahora tengo un editor con highlighting (arrastrar un par de componentes Lazarus y poco más :mrgreen: ) y un analizador capaz de decirte los errores que tiene el código fuente, aunque da por válidas instrucciones en ensamblador como CALL [IX+$FFFF], NZ :-" (eso sí, en Pascal no te pasa ni una... creo ).

El proyecto está hospedado en SourceForge, concretamente en http://z80-pascal.sourceforge.net/. Por ahora sólo está disponible por Subversion, y deberás compilarlo todo tú mismo. Necesitarás Free Pascal para el compilador, aunque debería funcionar también con Delphi o Turbo Delphi (este último es gratuito) y tal vez incluso con el GNU/Pascal. El intento de IDE solamente compila utilizando Lazarus.

Bueno, creo que ya lo he dicho todo. Iré dejando caer mensajes en este hilo según vaya consiguiendo hitos importantes, y si veis alguna pregunta mía en el foro de programación ya sabéis para qué es.

Un proyecto interesante :) animo

lastima que yo sea mas de C :) de momento con el SDCC voy tirando, pero no le quitare ojo a esto.
Ñuño Martínez
16 bits
16 bits
Mensajes: 65
Registrado: 12 Ene 2009 16:45
Ubicación: Ciudad Catedral, Españistán

Primera publicación oficial.

Mensaje por Ñuño Martínez »

Madremiaqueéxito... :|

En fin, a ver si esto os anima: Ya he publicado la versión 0.0. 8)

Aviso que sólo compila programas mínimos, así que no esperéis mucho. Además, tendréis que compilar el compilador vosotros mismos.

¡Esto marcha! Despacito, eso sí. :)
Avatar de Usuario
josepzin
128 bits
128 bits
Mensajes: 2238
Registrado: 25 Oct 2005 18:03
Ubicación: Carthagonova
Contactar:

Re: [Proyecto] Compilador Z80 Pascal

Mensaje por josepzin »

Suerte con el proyecto, tengo muchos recuerdos de Pascal, una pena que sea para Z80 y no para 6502 :)
Avatar de Usuario
MFM
16 bits
16 bits
Mensajes: 283
Registrado: 17 Ene 2009 05:48

Re: [Proyecto] Compilador Z80 Pascal

Mensaje por MFM »

Yo soy pascalero de toda la vida (y lo prefiero al C mil veces en cuanto a sintaxis, aunque sea demasiado formal), aunque en PC ya prácticamente no lo uso (mantengo y evoluciono cierto software hecho en Delphi) y en spectrum programo en ensamblador directamente.

Te echaré una mano con el betatesting, aunque ando muy muy mal de tiempo.

Para un juego no creo que lo utilizara, pero para hacer algún tipo de intro o cargadores de juegos multifase sí me gustaría tener disponible la opción de este compilador que comentas.

suerte con el proyecto!
Un saludo,

MFM Gandulf
Ñuño Martínez
16 bits
16 bits
Mensajes: 65
Registrado: 12 Ene 2009 16:45
Ubicación: Ciudad Catedral, Españistán

Re: [Proyecto] Compilador Z80 Pascal

Mensaje por Ñuño Martínez »

Gracias a los tres por los ánimos. (Olvidé agradecértelo en su momento, cybernoid. :( Espero que no te hayas molestado)

@MFM: Tu ofrecimiento me viene de perlas, sobre todo en lo que respecta a la usabilidad y la documentación "pública", porque me cuesta mucho explicar las cosas y siempre olvido decir algo importante.

Evidentemente no voy a exigirte nada, tú a tu ritmo. ;) Ya me irás comentando cosas por privado o en el propio foro que hay en la página de SourceForge (Por no ensuciar este, más que nada). Eso sí, si sabes utilizar Subversion mejor, así puedes ir probando cambios.

Yo también prefiero el Pascal al C muy mucho, y sobre todo lo prefiero al C++, que es un engorro. Aun así, para algunas cosas sí prefiero el C.
Avatar de Usuario
cht666cht
128 bits
128 bits
Mensajes: 2145
Registrado: 06 Oct 2005 12:20
Ubicación: Barcelona

Re: [Proyecto] Compilador Z80 Pascal

Mensaje por cht666cht »

Muy interesante el proyecto Ñuño, yo también soy más de Pascal que de C. A ver si con esto me animo algún día a hacer alguna cosilla para MSX... :)
Avatar de Usuario
MFM
16 bits
16 bits
Mensajes: 283
Registrado: 17 Ene 2009 05:48

Re: [Proyecto] Compilador Z80 Pascal

Mensaje por MFM »

Probé ayer a intentar compilarlo con FreePascal pero no hay manera. Al menos bajo windows Vista da una cantidad de problemas tremendo y básicamente no funciona nada (seguramente por mi desconocimiento del entorno FreePascal).

Lo intentaré luego con Delphi 7; me puse con lo del FreePascal por curiosidad, para ver como era el tema, pero además de los problemas con Vista, veo el IDE muy arcaico ya para mi gusto.
Un saludo,

MFM Gandulf
Ñuño Martínez
16 bits
16 bits
Mensajes: 65
Registrado: 12 Ene 2009 16:45
Ubicación: Ciudad Catedral, Españistán

Re: [Proyecto] Compilador Z80 Pascal

Mensaje por Ñuño Martínez »

MFM escribió:Probé ayer a intentar compilarlo con FreePascal pero no hay manera. Al menos bajo windows Vista da una cantidad de problemas tremendo y básicamente no funciona nada (seguramente por mi desconocimiento del entorno FreePascal).

Lo intentaré luego con Delphi 7; me puse con lo del FreePascal por curiosidad, para ver como era el tema, pero además de los problemas con Vista, veo el IDE muy arcaico ya para mi gusto.
Con Delphi, ni lo intentes, que ya te digo yo que no funciona. Supongo que el problema está en utilizar el make. Estoy utilizando el de GNU, no el de Free Pascal. La verdad es que no sé qué diferencias habrá entre ambos, pero como siempre he utilizado el de GNU pues sigo con él.

Para compilarlo, desde consola, en el directorio raíz (el z80-pascal), ejecuta:

Código: Seleccionar todo

fpc src\compiler\z80-pas.pp -FUobj\compiler -FEbin -Mobjfpc
Esto es lo que hace el makefile. Si no funciona me dices los errores, a ver si damos con el problema.

Si lo que utilizabas es el Lazarus, hay que configurar el compilador y, posiblemente, cambiar la extensión del archivo principal (z80pas.pp por z80pas.lpr).

A ver si instalo una máquina virtual con el ReactOS para poder hacer yo pruebas.
Avatar de Usuario
MFM
16 bits
16 bits
Mensajes: 283
Registrado: 17 Ene 2009 05:48

Re: [Proyecto] Compilador Z80 Pascal

Mensaje por MFM »

No he probado desde la línea de comandos, sino desde el IDE (Compile). No me daba errores de código sino de que no podía abrir el fichero de configuración, parámetro no soportado, etc. Lo del parámetro se lo quité en las opciones del Compiler y ya no saltaba (debe ser el que mete por defecto la instalación de FreePascal) pero el error al acceder al archivo de configuración no pude saltarlo. Estoy con Vista y he probado a ejecutar como administrador el IDE, pero seguramente llame a otro .exe que haya por el directorio raiz y éste no se ejecute con derechos de administrador.

Entonces lo volveré a intentar con el FreePascal pero instalándolo en una carpeta del profile del usuario y con un poco más de calma.
Un saludo,

MFM Gandulf
Ñuño Martínez
16 bits
16 bits
Mensajes: 65
Registrado: 12 Ene 2009 16:45
Ubicación: Ciudad Catedral, Españistán

Re: [Proyecto] Compilador Z80 Pascal

Mensaje por Ñuño Martínez »

Holabuenasquétal...

Simplemente me pasaba para decir que en las últimas semanas algo he hecho. El editor/IDE es casi utilizable y he añadido al compilador unas cuantas opciones en línea de comando, aparte de que ya reconoce y se salta los comentarios (o los añade al código ensamblador, si se utiliza la opción adecuada).

Como no son cosas que se vean mucho, no lo publico todavía, aunque si os manejáis con el SVN de SourceForge podéis ver que poco trabajo no ha sido (el lío empieza en la revisión 28 en adelante). A ver si en poco tiempo le meto llamadas a procedimiento, por ahora sin parámetros ni valor devuelto, pero llamadas al fin y al cabo. En cuanto lo tenga compilo una versión para Güindous y os aviso.

Saludos.
Responder