Tutorial - Como compilar basic 7.0 - Parte 2

Avatar de Usuario
carlosjuliopr
Mensajes: 628
Registrado: 20 Ago 2012 22:13
Ubicación: Puerto Rico
Agradecido : 315 veces
Agradecimiento recibido: 160 veces

Tutorial - Como compilar basic 7.0 - Parte 2

Mensajepor carlosjuliopr » 28 Abr 2013 20:01

Despues de varios dias sin internet gracias a la lluvia y a claro aqui les presento esta segunda parte del tutorial en la cual les mostrare las diferentes partes que componen el compilador de Abacus Basic 128, veremos como ajustarlo para que genere codigo ejcutable de acuerdo a nuestra necesidad, como podemos insertar directivas en nuestro codigo fuente para modificar el proceso de compilacion y le daremos un vistazo a un codigo fuente usado con frequencia para probar los compiladores y su funcionamiento.

Cuando ejecutmos el Basic 128 el nos muestra la siguiente pantalla:

bascomp128scr1.png


presionamos el numero 1 en nuestro teclado y basic 128 nos responde pidiendo un nombre de programa, hay que tener nuestro programa en basic puesto en la unidad de disco, tecleare el nombre y basic 128 procede a buscarlo y nos muestra la pantalla de proceso del compilador.
Usando esta configuracion por defecto Basic 128 nos procesa el programa y genera P-code compacto y de rapida ejecucion y guarda nuestro ejecutable como “p-nombreprograma”.
Este ejecutable esta listo para ser cargado y puesto a funcionar ya que tiene adherido el Runtime del p-code generado por basic 128.
Si en alguna ocasion es necesario generar codigo de lenguaje de maquina en alguna parte del programa (por ejemplo para agilizar operaciones matematicas o proceso de graficos) pues tenemos la directriz [REM@M] por ejemplo
:

Código: Seleccionar todo

10 rem programa de pruebas
20 rem @M: print “hola”
30 goto 20


En este ejemplo la linea numero 20 sera compilada como lenguaje de maquina y no en p-code.
Ahora a modo de prueba del compilador, entremos este corto programa en basic:

Código: Seleccionar todo

1 REM TEST 1
2COLOR0,1:COLOR4,1:COLOR3,RND(0)*14+2:GRAPHIC3,1:J=RND(0)*5+1:N=RND{0)*7:DRAW3,N*45.7,J*33TOJ*N*7,N*28.S:P$-"O"+-CHRS(48+J)+CHR$(65+N):PLAYP$
3 GOTO1


antes de ejecutarlo guardese como “test 1” en nuestro disco de trabajo. Y ejecutemos el Basic 128 compiler, apretamos la tecla 1 en el menu que nos presenta y cuando nos pida nombre de programa ponenos “test1”, el compilador dara sus 2 pasadas al codigo fuente y dejara un archivo (si no hay errores) en el disco con el nombre: “p-test1”, luego ejecutamos el archivo: “run “p-test1” y notaran que el programa ejecuta mucho mas ligero que en basic, de hecho17% mas ligero.

Vemos otro ejemplo mucho mas trabajoso para el procesador de nuestra c128 !, en este voy a dejar como sorpresa su ejecucion:

Código: Seleccionar todo

1 REM TEST 2
2 COLOR0.1:C0L0R1,2:COLOR4,1:GRAPIIIC1,1 :D0
3 FORJ=1TO15:X=160:Y=100
4 XR=INT(RND(1)*30)+80:YR=INT(RND(1)*30)+60
5IFD=0THEND=15:ELSEIFD=15THEND=45:ELSEIFD=45THEND=60:ELSEIFD=60THEND=90:ELSEIFD=90THEND=15
10 C0L0R1,3:FORI=XRTO0STEP-(XR/6):CIRCLE1,X,Y,I,YR,,,,D:NEXT
11 C0L0R1,8:FORI=YRTO0STEP-(YR/6):CIRCLE1,X,Y,XR,I,,,,D:NEXT
12 FORI=VRTO0STEP(-YR/6):CIRCLE0,X,Y,XR,I,,,,D:NEXT
13 FORI-XRTO0STEP-(XR/6I:CIRCLES,X,Y,I,YR,,,,D:NEXT:NEXT:LOOP


aqui otro programa de pruebas par que vean el poder de compilar un programa con Basic 128:

Código: Seleccionar todo

10 REM TEST 3
20 GRAPHIC1,1
30 BG=INT(RND(1)*15) +1
40 BC=INT(RND(1)*15)+1
50 FG=INT(RND(1)*15)+1 : IFFG=BGTHEN50
60 COLOR1,FG:COLOR0,BG:COLOR4,BC
70 IN=INT(RND(1)*250)+1
80 AN=INT(RND(1)*359) +l
90 R=INT(RND(1)*9)+2:T=INT(RND(1)*15)
100 DO UNTIL XR>100
110 XR=XR+R:AN=AN+T
120 CIRCLE 1,160,100,XR,,,,AN,IN
130 LOOP:BEEP2:CLR:GOTO20


En la tercera parte de este tutorial vamos a ver como optimizar manualmente codigo en basic para ser procesado para el compilador y como podemos hacer uso de la extensa memoria de nuestra c128 y mucho mas ! ! !

D71 de los probramas usados en esta parte del tutorial:

bascomtut1.rar
Basic Compiler Tutorial Files
(983 Bytes) Descargado 122 veces
"We need to build computers for the masses, not the classes",Jack Tramiel -cocbm1

Avatar de Usuario
ron
Mensajes: 21856
Registrado: 28 Oct 2010 14:20
Ubicación: retrocrypta
Agradecido : 3862 veces
Agradecimiento recibido: 4755 veces

Re: Tutorial - Como compilar basic 7.0 - Parte 2

Mensajepor ron » 28 Abr 2013 20:30

G R A C I A S !!! Great Work !


Volver a “Commodore 128”

¿Quién está conectado?

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