MSX BASIC es un dialecto del lenguaje de programación BASIC . Es una versión extendida de la versión 4.5 de MBASIC de Microsoft , que agrega soporte para gráficos, música y varios periféricos conectados a microcomputadoras MSX . Generalmente, MSX-BASIC está diseñado para seguir a GW-BASIC , lanzado el mismo año para PC y clones de IBM . [1] Durante la creación de MSX-BASIC, se hizo un esfuerzo para hacer que el sistema fuera flexible y ampliable.
Paradigma | imperativo |
---|---|
Desarrollador | Corporación Microsoft |
Apareció por primera vez | 1983 |
Lanzamiento estable | 4.1 |
SO | Opcional; Cualquier sistema operativo adecuado está bien |
Licencia | MS - EULA |
Sitio web | www |
Influenciado por | |
GW-BÁSICO | |
Influenciado | |
Vilnius BÁSICO |
Distribución
MSX BASIC venía incluido en la ROM de todos los ordenadores MSX. Al iniciar el sistema, se invoca MSX BASIC, lo que hace que se muestre su símbolo del sistema, a menos que otro software colocado en la ROM tome el control (que es el caso típico de los cartuchos de juegos y las interfaces de disco, este último hace que se muestre el símbolo del sistema MSX-DOS si hay un disco presente que contiene los archivos del sistema DOS).
Cuando se invoca MSX BASIC, el código ROM para BIOS y el propio intérprete BASIC son visibles en el 32K inferior del espacio de direccionamiento Z80. Los 32K superiores están configurados en RAM, de los cuales alrededor de 23K a 28K están disponibles para código y datos BASIC (la cantidad exacta depende de la presencia del controlador de disco y de la versión del kernel de MSX-DOS).
Entorno de desarrollo
El entorno de desarrollo de MSX BASIC es muy similar a otras versiones de Microsoft BASIC. Tiene un sistema de entorno de desarrollo integrado (IDE) basado en la línea de comandos; todas las líneas del programa deben estar numeradas, todas las líneas no numeradas se consideran comandos en modo directo (es decir, para ejecutarse inmediatamente). La interfaz de usuario está casi completamente basada en la línea de comandos, excepto por los atajos de las teclas de función en la parte inferior y un aviso inicial de derechos de autor en la parte superior de la pantalla.
Versiones de MSX BASIC
Cada nueva versión del ordenador MSX se incluía con una versión actualizada de MSX BASIC. Todas las versiones son compatibles con versiones anteriores y brindan nuevas capacidades para explorar completamente el hardware nuevo y extendido que se encuentra en las computadoras MSX más nuevas.
MSX BÁSICO 1.0
- Incluido con computadoras MSX 1
- 16 KB de tamaño
- No hay soporte nativo para disquetes que requieran la extensión del cartucho Disk BASIC (4 KB de sobrecarga)
- Soporte para todos los modos de pantalla disponibles:
- Pantalla 0 (modo texto 40 x 24 caracteres)
- Pantalla 1 (modo de texto mixto 32 x 24 caracteres, sprites y caracteres personalizados de colores)
- Pantalla 2 (modo gráfico de alta resolución 256 x 192 píxeles, 16 colores)
- Pantalla 3 (modo gráfico de baja resolución 64 × 48 - bloques de 4 × 4 píxeles sobre la resolución de la pantalla 2)
- Soporte completo para sprites de hardware y detección automática de colisiones impulsada por interrupciones
- Soporte completo para el generador de sonido programable (PSG) AY-3-8910 de General Instruments
Tenga en cuenta que los "clones" brasileños de MSX de Sharp y Gradiente muestran otras versiones de MSX-BASIC (en los Sharps incluso se llaman HOT-BASIC), pero básicamente son MSX BASIC 1.0 sin licencia.
MSX BÁSICO 2.0 / 2.1
- Incluido con computadoras MSX 2
- 32 KB de tamaño (los primeros 16 KB están disponibles directamente, los segundos 16 KB en otra ranura y debe ser paginado de entrada / salida para su uso)
- Se agregó soporte para los nuevos modos de pantalla disponibles, incluidos los modos gráficos con 212 líneas progresivas o 424 entrelazadas:
- Pantalla actualizada 0 (modo texto 80 x 24)
- Pantalla 5 (modo gráfico 256 x 212/424 píxeles, 16 colores de 512)
- Pantalla 6 (modo gráfico 512 x 212/424 píxeles, 4 colores de 512)
- Pantalla 7 (modo gráfico 512 x 212/424 píxeles, 16 colores de 512)
- Pantalla 8 (modo gráfico 256 x 212/424 píxeles, 256 colores, sin paleta)
- Soporte agregado para sprites multicolores (16 colores)
- Se agregó soporte para funciones gráficas aceleradas por hardware (copiar, rellenar, blittering, etc.)
- Se agregó soporte para usar la RAM inferior de 32K de la computadora (no visible directamente porque las ROM del intérprete de BIOS y BASIC toman el espacio de direccionamiento) como un disco RAM limitado (solo se pueden guardar ciertos tipos de archivos). MSX BASIC 2.1 admite el uso del mapeador de memoria (si está disponible en la máquina) para expandir este disco RAM a casi 90kB.
MSX BASIC 2.1 existe en ordenadores como las máquinas Philips MSX2 (excepto la VG 8230), la Yamaha YIS-805 [2] y Sanyo MPC-2300. [3]
MSX BASIC 3.0
- Incluido con computadoras MSX2 +
- 32 KB de tamaño (los primeros 16 KB están disponibles directamente, los segundos 16 KB en otra ranura y debe ser paginado de entrada / salida para su uso)
- Se agregó el comando SET SCROLL para un desplazamiento suave basado en hardware en BÁSICO
- Soporte agregado para nuevos modos de pantalla disponibles:
- Pantalla 10 (modo gráfico 256 x 212/424 píxeles, 12499 YJK a la vez + 16 colores de 512 RGB en ML)
- Pantalla 11 (modo gráfico 256 x 212/424 píxeles, 12499 YJK a la vez + 16 colores de 512 RGB)
- Pantalla 12 (modo gráfico 256 x 212/424 píxeles, 19268 YJK a la vez)
MSX BASIC 4.0
- Incluido con el modelo Panasonic FS-A1ST MSX turbo R
- Se agregó el comando _PAUSE para hacer que los retrasos en BASIC sean independientes de la CPU y el reloj actuales
- Se agregaron comandos adicionales para el dispositivo PCM ( _PCMPLAY , _PCMREC )
MSX BÁSICO 4.1
- Incluido con el modelo Panasonic FS-A1GT MSX turbo R
- Extensiones MIDI agregadas
100 ABRIR "COM5: 9600, N, 8,1, RS, CS, DS, CD" PARA ALEATORIO COMO # 1110 A $ = INKEY $ 120 IF A $ <> "" ENTONCES 110130 IMPRIMIR # 1, "X0" 140 ENTRADA # 1, B $ 150 IMPRESIÓN B $ 160 GOTO 110
Extensiones de MSX BASIC
Dado que MSX BASIC estaba destinado a ser ampliable desde el principio, era posible escribir módulos adicionales con bastante facilidad. El soporte para hardware específico se agregó comúnmente por medio de cartuchos de expansión, que también sirvieron como interfaz para el hardware en cuestión. MSX Disk-BASIC es un ejemplo, incluido en el cartucho que proporciona la interfaz de hardware a las unidades de disco, agrega comandos para acceder a las unidades de disquete.
Referencias
- ^ Tom R. Halfhill (enero de 1985). "Se acerca el MSX - Parte II: Dentro del MSX" . ¡Calcular! . Consultado el 31 de octubre de 2010 .
- ^ Sergei Frolov (abril de 2011). "Yamaha YIS-805 (Museo Soviético de Electrónica Digital)" . Consultado el 6 de abril de 2011 .
- ^ Sergei Frolov (abril de 2011). "Sanyo MPC-2300 (Museo Soviético de Electrónica Digital)" . Consultado el 6 de abril de 2011 .
enlaces externos
- MSX.bas - Un sitio web portugués que se centra completamente en el desarrollo en MSX-BASIC.
- Manual técnico de MSX2, Capítulo 2: BÁSICO - Documentación oficial de MSX-BASIC 2.0, generada manualmente a partir de una copia impresa del Manual técnico de MSX2.