Karoshi MSX Community
05 de Julio de 2021, 07:56:00 pm *
Bienvenido(a), Visitante. Por favor, ingresa o regístrate.

Ingresar con nombre de usuario, contraseña y duración de la sesión
Noticias:
 
   Inicio   Ayuda Buscar Ingresar Registrarse  
Páginas: 1 2 [3] 4 5
  Imprimir  
Autor Tema: Sobre C en MSX  (Leído 35026 veces)
0 Usuarios y 1 Visitante están viendo este tema.
pitpan
Karoshi Forum's Guru
*******
Mensajes: 1812


« Respuesta #30 : 25 de Abril de 2008, 01:59:12 pm »

Several people helped to do some C compiler comparison at MRC. IIRC both Artrag and JLTursan contributed, as well as many other MSXers.

The original threads are these:

(1) C compiler comparison

(2) C compiler comparison - part two

Anyway, I doubt that any single C compiler will give the best solution whatsoever. Accepting this fact, we should look for the best overall solution or, perhaps, the one that provides higher flexibility.

I'd like to make some tests regarding application development in C. I still think that assembler is the way for games (although that recent productions show that C is an option too), but maybe C compilers can provide an affordable development time for applications without compromissing performance. Any views regarding this?
En línea
jltursan
Karoshi Forum's Guru
*******
Mensajes: 1516


¿Que es lo que has aprendido hoy?


WWW Email
« Respuesta #31 : 25 de Abril de 2008, 02:26:32 pm »

I doesn't really contributed too much, ARTRAG was the main tester. Most of the tests were speedwise, what about I'm really interested is in size optimizations (although with a good banking framework, the size is not so important of course).

Por cierto, cuidado con el enlace que he publicado antes, te descargas el compilador; pero luego pide un código de registro...¡que no veo que te proporcionen por ningún lado! Angry. No puede ser tan complicado, me debo estar liando con algo...
En línea

Doom dee doom dee doom
nerlaska
Karoshi Excellent Member
******
Mensajes: 1102


Programador


WWW Email
« Respuesta #32 : 25 de Abril de 2008, 04:56:15 pm »

Hombre .. realmente en C se puede programar y bien .. cierto es que el SDCC no genera un código demasiado compacto/óptimo .. de hecho ninguna de las dos cosas Smiley .. pero no es tan importante la verdad.
De hecho en un juego tienes el motor hecho en assembler inline .. el que he usado yo para los juegos que he montado tiene soporte Bitbuster, Pt3, Psg, Scc, Opll, Vdp y herramientas por doquier .. y se queda en menos de 8kb. Luego ya viene el núcleo de los juegos que eso si es C puro y duro y ahí si se notan los bytes. Pero bueno, teniendo soporte multibanco tampoco es un gran problema.
Me alegra ver que se abre un nuevo hilo sobre el C y la gente piensa en el lado oscuro!! Smiley


En línea

MSX4EVER2GETHER
www.nerlaska.com
Jos'b
Karoshi Maniac
****
Mensajes: 262


« Respuesta #33 : 25 de Abril de 2008, 08:27:16 pm »

HiTech have full asm support

You can both use this

#asm
code here in asm
#endasm

or this

asm("ld a,(_myvar)");
asm("xor a");
asm("ld (_myvar),a");

Gracias, para mi la mejor opción.

Recuerdo que en su dia Airam hizo unas librerias para el HiTech, aunque creo que las hizo para el GFX9000, no estoy demasiado seguro. Sobre librerias graficas aqui tienes una que he encontrado:

http://msx.jannone.org/

Ahi por ahi otra de un japo, que si quieres, pues tu mismo ...

Pues de momento me voy a quedar con la sugerencia de ARTRAG. Aunque ya me he descargado los archivos para echarle un vistazo.

Por cierto he conseguido por fin compilar mis primeros programas. Básicamente fuentes que ya tenía hechas y, perfecto. Quizás salen demasiados mensajitos mientras compila para mi gusto, más que nada por que no sé de momento que quieren decir.

Por último me gustaría que me recomendaras algún buen manual/tutorial o similar. Y por supuesto reiterar mi agradecimiento por tu información, has conseguido ampliar las posibilidades de mi MSX.

Me alegra ver que se abre un nuevo hilo sobre el C y la gente piensa en el lado oscuro!! Smiley

Yo también. Solo falta algún concurso opensource en C.

« Última modificación: 26 de Abril de 2008, 06:31:08 am por Jos'b » En línea
Jos'b
Karoshi Maniac
****
Mensajes: 262


« Respuesta #34 : 26 de Abril de 2008, 09:40:10 am »

Citar
I still think that assembler is the way for games

No te has planteado hacer alguna versión del AsMSX, aunque sea reducida, para MSX. Sería una buena opción para programar en ensamblador, indistintamente desde el PC o el MSX.
En línea
Jos'b
Karoshi Maniac
****
Mensajes: 262


« Respuesta #35 : 26 de Abril de 2008, 07:06:33 pm »

Citar
Por último me gustaría que me recomendaras algún buen manual/tutorial o similar.

No hacerme mucho caso con este comentario. Todo lo que necesito (creo) está en la guia de usuario que viene comprimida en el archivo "z80doc.exe". Aunque admito consejos y detalle/s que haya/n que tener en cuenta, a la hora de programar con este compilador.
« Última modificación: 26 de Abril de 2008, 07:08:17 pm por Jos'b » En línea
Jos'b
Karoshi Maniac
****
Mensajes: 262


« Respuesta #36 : 27 de Abril de 2008, 11:42:30 am »

Bueno pues continuo con mis problemas MSX y el C.

He estado ensayando con este código, con ensamblador in-line.

Código:
/*
Fichero J_CLS.C
Borra pantalla usando ensamblador "inline"
*/
#include <stdio.h>

void main(void);
void cls(void);

void main(void)
{
cls();
}

void cls(void)
{
#asm
xor a
ld iy,65472
ld ix,195
call 29
#endasm
}

Y el compilador me da los siguiente errores,
1.- EOF in asm
2.- Undefined simbol: endasm

De lo que deduzco, mirando el manual, que el problema "único" es que no reconoce la etiqueta "#endasm". Puesto que ambos errores están relacionados.

He mirado el manual de arriba a abajo (por cierto hay partes del mismo que no existen), y no encuentro el por qué de esto. Tampoco veo en las opciones de compilación que haya que hacer nada especial para que el compilador reconozca las etiquetas #asm y #endasm.

Si alguien me puede ayudar y decirme dónde me estoy equivocando. Se lo vuelvo a agradecer y prometo hacer un jueguecillo en C programado directamente en el MSX.
En línea
jltursan
Karoshi Forum's Guru
*******
Mensajes: 1516


¿Que es lo que has aprendido hoy?


WWW Email
« Respuesta #37 : 27 de Abril de 2008, 11:52:48 am »

De Hitech no tengo ni idea; pero, ¿por qué no pruebas el método alternativo que comentó ARTRAG?
En línea

Doom dee doom dee doom
Jos'b
Karoshi Maniac
****
Mensajes: 262


« Respuesta #38 : 27 de Abril de 2008, 04:29:13 pm »

De Hitech no tengo ni idea; pero, ¿por qué no pruebas el método alternativo que comentó ARTRAG?

También lo he probado. Y el compilador no reconoce la instrucción asm(). De hecho en el manual no he conseguido encontrarla en la referencia a todas las funciones que soporta.

Solamente hace una pequeña mención en un apartado que ni siquiera está titulado, y dice literalmente esto:

Citar
        There are two methods provided  for  in-line  assembler
   code  in  C  programs.   The  first  allows several lines of
   This is assembler anywhere in a program. via  the  #asm  and
   #endasm  preprocessor  directives.   Any lines between these
   two directives will be copied straight through to the assem-
   bler  file  produced  by the compiler. Alternatively you can
   use the asm("string"); construct anywhere a C  statement  is
   expected. The string will be copied through to the assembler
   file. Care should be  taken  with  using  in-line  assembler
   since it may interact with compiler generated code.

Lo cierto es que me estaba atreyendo la idea de utilizar este C. Ya que el BDS es tan elemental que no te deja ni siquiera inicializar un array al declararlo.

Así que de momento me gustaría agotar todas las vias posibles antes de desistir.
En línea
Jos'b
Karoshi Maniac
****
Mensajes: 262


« Respuesta #39 : 27 de Abril de 2008, 06:53:35 pm »

He estado probando el compilador bajo el MSX-DOS1 y compila bien. No emite ningún mensaje de error. (El resultado de ejecutar el .com es un bloqueo total, pero bueno lo importante para mí ahora son los mensajes de error).

¿ Tendrá algo que ver que lo este usando bajo MSX-DOS 2.2, FAT16 y SD en la tarjeta de de Padial ?

¿ Existe alguna alternativa que me permita usar el compilador sin renunciar a la configuración anterior ?
En línea
ARTRAG
Visitante
« Respuesta #40 : 27 de Abril de 2008, 07:01:53 pm »

If anyone is interested in some ready to go examples to generate msx roms in HTC v7.8, I could try to share the code of some projects.

I did a rom of 48K using the small memory model and a megarom of 512K using the SCC Konami mapper using the large memory model.

I would attach them here, but the forum does not allow upload anymore.

If anyone needs support in developing with the HTC I think I can help a bit, my experience at your service Wink
En línea
k0ga
Karoshi Fan
**
Mensajes: 85


Email
« Respuesta #41 : 27 de Abril de 2008, 07:59:25 pm »

If anyone is interested in some ready to go examples to generate msx roms in HTC v7.8, I could try to share the code of some projects.

I did a rom of 48K using the small memory model and a megarom of 512K using the SCC Konami mapper using the large memory model.

I would attach them here, but the forum does not allow upload anymore.

If anyone needs support in developing with the HTC I think I can help a bit, my experience at your service Wink

The first thing could be put 7.8 version in a site in which download it, because version from ht web ask for a code that I don't know where can be obtained. I have 7.5 version, and I don't know the diference with 7.8 version
En línea
ARTRAG
Visitante
« Respuesta #42 : 27 de Abril de 2008, 08:21:03 pm »

do not worry
v7.5 and v7.8 are almost the same
if you need my samples send me an email, you can also use the address :  ragozini at gmail you know the rest
En línea
jltursan
Karoshi Forum's Guru
*******
Mensajes: 1516


¿Que es lo que has aprendido hoy?


WWW Email
« Respuesta #43 : 27 de Abril de 2008, 10:04:37 pm »

Citar
The first thing could be put 7.8 version in a site in which download it, because version from ht web ask for a code that I don't know where can be obtained.

Indeed, seems that the 7.8 version can't be unlocked Angry. From where can be downloaded the 7.5 version?
En línea

Doom dee doom dee doom
ARTRAG
Visitante
« Respuesta #44 : 27 de Abril de 2008, 10:55:40 pm »

if you do not have any fear of viruses google for

"HI-TECH Z80 Compiler v7.50 Demo"
En línea
Páginas: 1 2 [3] 4 5
  Imprimir  
 
Ir a:  

Impulsado por MySQL Impulsado por PHP Powered by SMF 1.1.21 | SMF © 2013, Simple Machines XHTML 1.0 válido! CSS válido!