¿Cómo sería el Spectrum BASIC hoy en día? Aquí la solución.
Moderador: Sir Cilve Sinclair
-
- rst 0
- Mensajes: 41
- Registrado: Dom Ago 12, 2007 10:50 pm
- Ubicación: Murcia (España)
- Contactar:
¿Cómo sería el Spectrum BASIC hoy en día? Aquí la solución.
Hola a todos otra vez.
Desde hace mucho tiempo buscaba un intérprete de BASIC que me permitiera hace cosas al estilo de mi muy querido Spectrum. Y, aunque lo busqué con ahínco, no encontré nada parecido.
Pero, hete aquí que Paul Dunn (el autor de BASin) viene al rescate con su proyecto SpecOS. He buscado en este foro y no me he topado con ninguna referencia al mismo, así que os dejo la referencia: https://sites.google.com/site/pauldunn/.
He descargado la última versión de desarrollo y me ha encandilado. Estoy deseando ver la primera versión estable, porque va a ser la caña (¿qué digo?: ¡ya es la caña!).
En serio, no podéis dejar de echarle un vistazo.
Desde hace mucho tiempo buscaba un intérprete de BASIC que me permitiera hace cosas al estilo de mi muy querido Spectrum. Y, aunque lo busqué con ahínco, no encontré nada parecido.
Pero, hete aquí que Paul Dunn (el autor de BASin) viene al rescate con su proyecto SpecOS. He buscado en este foro y no me he topado con ninguna referencia al mismo, así que os dejo la referencia: https://sites.google.com/site/pauldunn/.
He descargado la última versión de desarrollo y me ha encandilado. Estoy deseando ver la primera versión estable, porque va a ser la caña (¿qué digo?: ¡ya es la caña!).
En serio, no podéis dejar de echarle un vistazo.
El Spectrum no necesita ser actualizado cada equis años, y SIEMPRE es compatible consigo mismo (chúpate esa, BG).
- Hark0
- Freddy Hardest
- Mensajes: 545
- Registrado: Mar Nov 13, 2012 12:42 pm
- Ubicación: Cornella de Llobregat - Barcelona
- Contactar:
Re: ¿Cómo sería el Spectrum BASIC hoy en día? Aquí la soluci
Ostras!
Si el BASin ya me parece bueno, este ya tiene que ser la repera... y por lo que leo, con soporte RPi.
Si el BASin ya me parece bueno, este ya tiene que ser la repera... y por lo que leo, con soporte RPi.
litiopixel.blogspot.com - Desarrollo videojuegos Indie · Pixel-Art · Retroinformática · Electrónica
- javiperez
- Jack The Nipper
- Mensajes: 103
- Registrado: Vie Ago 24, 2007 12:45 pm
- Ubicación: Valladolid
Re: ¿Cómo sería el Spectrum BASIC hoy en día? Aquí la soluci
"No more attribute clash"?? Esto es intrínseco a la organización de la memoria gráfica y el área de atributos, no?
The Spectrum will rise again to rule the Earth.
Real programmers never die. They just return without gosub.
Real programmers never die. They just return without gosub.
- na_th_an
- Nonamed
- Mensajes: 1889
- Registrado: Lun May 07, 2007 10:16 am
- Ubicación: Andalucía
Re: ¿Cómo sería el Spectrum BASIC hoy en día? Aquí la soluci
En un dispositivo moderno no hay problemas de atributos. A eso se refiere. No es un intérprete para Spectrum, sino para dispositivos modernos.
A mí no me va. En cuanto pude abandonar los números de linea me sentí liberado. Volver a ellos me parece un contradios.
A mí no me va. En cuanto pude abandonar los números de linea me sentí liberado. Volver a ellos me parece un contradios.
-
- Herbert
- Mensajes: 65
- Registrado: Mar Nov 24, 2009 7:16 pm
Re: ¿Cómo sería el Spectrum BASIC hoy en día? Aquí la soluci
Vaya... pensaba que era un BASIC compilado en el Spectrum.
Estoy de acuerdo con na_th_an... odio los números de línea, el EDIT y demás. Prefiero la programación estructurada y, al contrario de lo que pensaba en su día, no necesito el GO TO para nada
Me acostumbré a programar en PASCAL, luego evolucioné a Delphi, y me cuesta mucho volver al BASIC Spectrum.
Tendré que mirarme el BASin, a ver que puede hacer por mí. Lástima del z88dk, no encuentro nada que me ayude a lanzarme, con tanto lío de instalación.
Un saludo.
Estoy de acuerdo con na_th_an... odio los números de línea, el EDIT y demás. Prefiero la programación estructurada y, al contrario de lo que pensaba en su día, no necesito el GO TO para nada
Me acostumbré a programar en PASCAL, luego evolucioné a Delphi, y me cuesta mucho volver al BASIC Spectrum.
Tendré que mirarme el BASin, a ver que puede hacer por mí. Lástima del z88dk, no encuentro nada que me ayude a lanzarme, con tanto lío de instalación.
Un saludo.
- wilco2009
- Freddy Hardest
- Mensajes: 543
- Registrado: Lun Sep 17, 2012 9:40 am
- Ubicación: Valencia
Re: ¿Cómo sería el Spectrum BASIC hoy en día? Aquí la soluci
Vaya, vaya..... Basic, Pascal, Delphi..... Me parece estar recordándome a mi mismo.
-
- Herbert
- Mensajes: 65
- Registrado: Mar Nov 24, 2009 7:16 pm
Re: ¿Cómo sería el Spectrum BASIC hoy en día? Aquí la soluci
Pues hace mil años que no programo nada, y tenia medio hacer mi base de datos para Spectrum. Quizá debería retomarla y meterle caña de una vez.
Un saludo.
Un saludo.
- JBGV
- Manic Miner
- Mensajes: 279
- Registrado: Vie Feb 11, 2011 9:16 am
Re: ¿Cómo sería el Spectrum BASIC hoy en día? Aquí la soluci
Hola.
Oye, cuando decís que no usáis los GO TO o GOSUB os referís a eso, literalmente?
Yo no sabría hacer nada sin ellos
En ASM también, estoy todo el tiempo con JP JR y CALL.
Oye, cuando decís que no usáis los GO TO o GOSUB os referís a eso, literalmente?
Yo no sabría hacer nada sin ellos
En ASM también, estoy todo el tiempo con JP JR y CALL.
-
- Herbert
- Mensajes: 65
- Registrado: Mar Nov 24, 2009 7:16 pm
Re: ¿Cómo sería el Spectrum BASIC hoy en día? Aquí la soluci
No, decimos que no usamos GO TO, no GO SUB. Los GO SUB son los "procedimientos" en programación estructurada.
Digamos que "defines" una nueva orden del lenguaje, que acepta parámetros como las demás, y la llamas como si hicieras un PRINT, LET o lo que sea. Es decir, Si necesitas un marcador de una manera concreta, creas la procedure MARCADOR(puntos:integer), y luego, en el bucle del juego, tras los INKEY$ por ejemplo, escribes MARCADOR(puntos_actuales), y se dibujaría.
Son "cajas negras" que hacen lo que quieras, o calculan lo que quieras. Lo único que cambia es que le puedes pasar valores, y que sus variables son locales y una vez finaliza el procedimiento su trabajo, estas dejan de existir.
En cuanto al GO TO, una vez eliminas los números de línea, te das cuenta de la poca falta que hace. Y si hablamos ya de programación con objetos, la primera pregunta que te viene a la mentes es... ¿GO... qué?
Busca un compilador de C, aprende a hacer programas básicos (por ejemplo, un punto de venta sencillo, en modo texto), y verás como el GO TO pasa a ser algo del pasado.
En Spectrum, lo usábamos mucho para arreglar la falta de estructuras básicas de cualquier lenguaje, como el WHILE, y sobre todo el IF THEN... ELSE. Una vez tienes esas estructuras, dejas de necesitar el GO TO.
Un saludo.
Digamos que "defines" una nueva orden del lenguaje, que acepta parámetros como las demás, y la llamas como si hicieras un PRINT, LET o lo que sea. Es decir, Si necesitas un marcador de una manera concreta, creas la procedure MARCADOR(puntos:integer), y luego, en el bucle del juego, tras los INKEY$ por ejemplo, escribes MARCADOR(puntos_actuales), y se dibujaría.
Son "cajas negras" que hacen lo que quieras, o calculan lo que quieras. Lo único que cambia es que le puedes pasar valores, y que sus variables son locales y una vez finaliza el procedimiento su trabajo, estas dejan de existir.
En cuanto al GO TO, una vez eliminas los números de línea, te das cuenta de la poca falta que hace. Y si hablamos ya de programación con objetos, la primera pregunta que te viene a la mentes es... ¿GO... qué?
Busca un compilador de C, aprende a hacer programas básicos (por ejemplo, un punto de venta sencillo, en modo texto), y verás como el GO TO pasa a ser algo del pasado.
En Spectrum, lo usábamos mucho para arreglar la falta de estructuras básicas de cualquier lenguaje, como el WHILE, y sobre todo el IF THEN... ELSE. Una vez tienes esas estructuras, dejas de necesitar el GO TO.
Un saludo.
- Scooter
- Freddy Hardest
- Mensajes: 711
- Registrado: Jue Nov 11, 2010 10:17 pm
Re: ¿Cómo sería el Spectrum BASIC hoy en día? Aquí la soluci
Recuerdo el simons basic del c64 que permitía crear funciones y llamarlas por su nombre, que lujo asiatico!
Aquellos chalados en sus viejos cacharros...
- na_th_an
- Nonamed
- Mensajes: 1889
- Registrado: Lun May 07, 2007 10:16 am
- Ubicación: Andalucía
Re: ¿Cómo sería el Spectrum BASIC hoy en día? Aquí la soluci
Yo no me prohíbo usar GOTOs, pero al final tampoco los uso. No son necesarios. La única situación en los que viene bien es para salir de un montón de bucles anidados de un plumazo, por velocidad.
Los GOSUBs sí que ya no sirven para nada, teniendo funciones y procedimientos.
@elfooscuro: no hace falta irse a C, en ZX Basic tienes funciones (FUNCTION) y procedimientos (SUB), además de todas las construcciones de programación extructurada (WHILE:WEND, etcétera).
Los GOSUBs sí que ya no sirven para nada, teniendo funciones y procedimientos.
@elfooscuro: no hace falta irse a C, en ZX Basic tienes funciones (FUNCTION) y procedimientos (SUB), además de todas las construcciones de programación extructurada (WHILE:WEND, etcétera).
- JBGV
- Manic Miner
- Mensajes: 279
- Registrado: Vie Feb 11, 2011 9:16 am
Re: ¿Cómo sería el Spectrum BASIC hoy en día? Aquí la soluci
Gracias por las aclaraciones !
Hum... Esto contáis del GO TO es la diferencia entre la "programación estructurada" y la "programación lineal", no? -perdonad si digo alguna tonteria, yo en realidad no soy programador - Básicamente es el mismo código pero "ordenado" de forma distinta no?
Hum... Esto contáis del GO TO es la diferencia entre la "programación estructurada" y la "programación lineal", no? -perdonad si digo alguna tonteria, yo en realidad no soy programador - Básicamente es el mismo código pero "ordenado" de forma distinta no?
- na_th_an
- Nonamed
- Mensajes: 1889
- Registrado: Lun May 07, 2007 10:16 am
- Ubicación: Andalucía
Re: ¿Cómo sería el Spectrum BASIC hoy en día? Aquí la soluci
La programación estructurada tiene bastantes ventajas. La primera es que es más legible y fácil de entender. Si indentas bien el código, con un simple vistazo puedes entender la estructura de un algoritmo, sin tener que estar siguiendo GOTOs. En este sentido, sí, es una forma diferente de organizar el código. A la programación más lineal le suelen crecer los enanos y al final se obtiene lo que se conoce como "código espaghetti". Se llama así porque el flujo se lía y se relía en sí mismo y al final, si revisitas tu programa tras unos meses, las pasas putas para seguir el hilo.
Además, hace que mover o reutilizar código sea mucho más fácil, ya que no hay que enmendar etiquetas ni cambiar números de linea ni nada parecido. Básicamente, lo que haces es facilitarte la vida. ¿cómo te crees que sacamos tantos juegos? Porque somos los masters del universo del CTRL+C, CTRL+V
Sin embargo, GOTO tiene algunas aplicaciones y a veces viene bien para acelerar un poco las cosas. Por lo general, programando estructuradamente no tienes ningún impacto en eficiencia (en realidad, si lo haces bien, te es más fácil optimizar el código y hasta es mejor), pero hay veces en las que un GOTO viene bien:
En situaciones así puedes usarlo para salir de un plumazo de un montón de estructuras anidadas. En realidad es para lo único que lo usaría, pero confieso que llevo mucho sin usarlo. En todos mis últimos juegos en C o en ZX Basic no hay ni uno solo.
Además, hace que mover o reutilizar código sea mucho más fácil, ya que no hay que enmendar etiquetas ni cambiar números de linea ni nada parecido. Básicamente, lo que haces es facilitarte la vida. ¿cómo te crees que sacamos tantos juegos? Porque somos los masters del universo del CTRL+C, CTRL+V
Sin embargo, GOTO tiene algunas aplicaciones y a veces viene bien para acelerar un poco las cosas. Por lo general, programando estructuradamente no tienes ningún impacto en eficiencia (en realidad, si lo haces bien, te es más fácil optimizar el código y hasta es mejor), pero hay veces en las que un GOTO viene bien:
Código: Seleccionar todo
While Not terminado
For j = 1 To 1000
For k = 32 To 128 Step 8
Do
a = Int (Rnd * 10)
b = Int (Rnd * 20)
If mapa (a, b) = 12 Then Goto fueraDelTodo:
Loop While a = b
Next k
Next j
Wend
fueraDelTodo:
En situaciones así puedes usarlo para salir de un plumazo de un montón de estructuras anidadas. En realidad es para lo único que lo usaría, pero confieso que llevo mucho sin usarlo. En todos mis últimos juegos en C o en ZX Basic no hay ni uno solo.
- JBGV
- Manic Miner
- Mensajes: 279
- Registrado: Vie Feb 11, 2011 9:16 am
Re: ¿Cómo sería el Spectrum BASIC hoy en día? Aquí la soluci
Joer ,gracias. En esto es en lo que tengo que insistir mas, las mierdoñas que yo hago siguen liadísimas.
Entonces CTRL+C, CTRL+V es como se llama técnicamente a la churrera
PD, por cierto tengo que abrir un hilo para preguntarte sobre el tutorial de compresión/descompresion que pusiste en la página de Boriel... pero otro día .
Entonces CTRL+C, CTRL+V es como se llama técnicamente a la churrera
PD, por cierto tengo que abrir un hilo para preguntarte sobre el tutorial de compresión/descompresion que pusiste en la página de Boriel... pero otro día .
- na_th_an
- Nonamed
- Mensajes: 1889
- Registrado: Lun May 07, 2007 10:16 am
- Ubicación: Andalucía
Re: ¿Cómo sería el Spectrum BASIC hoy en día? Aquí la soluci
JBGV escribió:Joer ,gracias. En esto es en lo que tengo que insistir mas, las mierdoñas que yo hago siguen liadísimas.
Entonces CTRL+C, CTRL+V es como se llama técnicamente a la churrera
PD, por cierto tengo que abrir un hilo para preguntarte sobre el tutorial de compresión/descompresion que pusiste en la página de Boriel... pero otro día .
Fale
¿Quién está conectado?
Usuarios navegando por este Foro: Google [Bot] y 3 invitados