Articulo de referencia

ToBoS-FP

ToBoS-FP en casete compacto ToBoS-FP es un compilador de punto flotante para Sinclair BASIC en ZX Spectrum . El nombre significa To ruń , Jerzy Borkowski , Wojciech Skaba , Punt...

ToBoS-FP en casete compacto

ToBoS-FP es un compilador de punto flotante para Sinclair BASIC en ZX Spectrum . El nombre significa To ruń , Jerzy Borkowski , Wojciech Skaba , Punto Flotante . El compilador se lanzó en Polonia en 1986. [ 1 ] La compilación del código fuente permite una aceleración sustancial (20+ [ 2 ] ) de la ejecución de programas que normalmente se interpretan . La aceleración resulta principalmente de la utilización de la propia biblioteca de aritmética de punto flotante del compilador [ 3 ] y la biblioteca gráfica que reemplazan las rutinas integradas de ZX Spectrum. En una encuesta independiente de 1992, ToBoS-FP fue nombrado el más popular de todos los compiladores BASIC conocidos para ZX Spectrum. [ 4 ] Todavía se le considera uno de los mejores compiladores BASIC para ZX Spectrum. [ 5 ]

Fondo

El ZX Spectrum viene equipado de fábrica con un editor e intérprete Sinclair BASIC que permite la ejecución inmediata del programa sin una fase de compilación y sin consumir memoria para el código compilado. Sin embargo, esto tiene un coste en términos de velocidad de ejecución. Desde entonces se han lanzado varios compiladores de enteros y de punto flotante (por ejemplo, HiSoft Basic).HiSoft ColtSoftek IS/FP, MCoderCompilador ZIPBoriel ZX Básico, ExplosiónDesafortunadamente, Sinclair BASIC permite construcciones de programación difíciles o incluso imposibles de compilar (por ejemplo, GO TO line number, que es una expresión calculada en tiempo de ejecución). Por lo tanto, la compatibilidad entre el intérprete y el compilador es un problema.

Desarrollo

El compilador fue escrito en lenguaje ensamblador Z80 . Existen dos fuentes principales de aceleración de la ejecución del código compilado:

  • Conversión del código fuente en código de subprocesos directos que libera al procesador de traducir [repetidamente] las instrucciones BASIC en llamadas de programa [ 6 ]
  • Aplicación de las llamadas a subrutinas críticas en tiempo real del propio compilador, especialmente aquellas que tratan con aritmética de punto flotante y funciones gráficas.

Para lograr una aceleración sustancial, se ha aplicado un formato de números de punto flotante más corto, cercano a la precisión simple IEEE 754-1985 , que consta de un exponente de 1 byte y una fracción de 3 bytes (efectivamente, una precisión de 7 dígitos decimales). El BASIC original de Sinclair utiliza un exponente de 1 byte y una fracción de 4 bytes. [ 7 ] Se han reescrito todas las rutinas aritméticas de punto flotante, incluidas las operaciones básicas como suma, multiplicación, división y funciones como raíz cuadrada, logaritmo y exponente. Se ha desarrollado un algoritmo único para el cálculo de funciones trigonométricas. [ 8 ] También se han escrito funciones de dibujo de líneas, dibujo de círculos y otras funciones gráficas.

Comunicados

Compilación exitosa

La versión más popular de ToBoS-FP (versión 2.0) se lanzó en un casete compacto en mayo de 1986 en Polonia. Tras cargarlo en la memoria, el compilador podía invocarse con la instrucción USR 53100. Las versiones anteriores no estables, identificadas como 1.0, 1.1 y 1.2, y que se invocaban con la instrucción USR 53500 , estaban disponibles de forma limitada.

En junio de 1987 se lanzó una versión mejorada llamada ToBoS-DYD (en coautoría con Tadeusz Golonka). Se distribuyó en un disquete de 5 1⁄4 pulgadas y se adaptó para el clon Elwro 800 Junior del ZX Spectrum. En comparación con la versión 2.0, algunas funciones se optimizaron aún más y se añadieron extensiones para el Elwro 800 Junior. [ 9 ]

Recepción

Aunque se vendieron unas 2000 copias de ToBoS-FP en Polonia, se extendió por todo el mundo principalmente de forma gratuita. Al lanzarse cuando el interés general por el ZX Spectrum comenzaba a declinar, llegó demasiado tarde para el mercado. ToBoS-FP alcanzó su mayor popularidad en Polonia y otros países de Europa del Este , donde el ZX Spectrum y sus clones eran de uso común hasta mediados de la década de 1990. Su capacidad para acelerar los juegos escritos en Sinclar BASIC fue especialmente apreciada. [ 10 ]

Referencias

  1. Skaba, Wojciech; Borkowski, Jerzy (septiembre de 1986). "Pierwszy polski kompilator na Spectrum [el primer compilador polaco de Spectrum]". Bajtek . RSW „Prasa-Książka-Ruch”, Młodzieżowa Agencja Wydawnicza: 20. ISSN 0860-1674 . 
  2. Skaba, Wojciech; Borkowski, Jerzy (marzo de 1987). "TOBOS-FP polski kompilator na Spectrum [compilador polaco TOBOS-FP para Spectrum]". Computadora . RSW „Prasa-Książka-Ruch”: 28. ISSN 0860-2514 . 
  3. Skaba, Wojciech (1987). "ToBoS-FP Basic alcanza la velocidad de la luz". Ingeniería Polaca . AGPOL Foreign Trade Publicity and Publishing Enterprise: 30. ISSN 0209-0260 . 
  4. Болдачев, А.В.; Думов, И.Е; Елисеев, В.А. (1992). "Спектрум Бейсик - Компиляторы, работающие с вещественными числами: Softek FP, Tobos FP". Dialectos musicales del ZX Spectrum . Piter (Piter Ltd.). ISBN 5-7190-0001-1. El compilador Tobos FP (Tobos Floating Point) apareció en la última década de 1986 en Polonia y está instalado en este año, popular y popular. из всех известных бейсик-компиляторов для ZX Spectrum.
  5. ^ Chabik, Jakub (12 de junio de 2006). "Kod źródłowy Leonarda da Vinci" . Computerworld Polonia . IDG Polonia SA. ISSN 1429-012X . 
  6. Skaba, Wojciech; Borkowski, Jerzy (agosto de 1986). "Polski kompilator TOBOS FP [compilador polaco TOBOS FP]". Electrónica . ZSP Politechniki Wrocławskiej: 7. ISSN 0860-293X . 
  7. Vickers, Steven (1982). "Capítulo 24". Programación BASIC para Sinclair ZX Spectrum . Sinclair Research Ltd.
  8. Skaba, Wojciech (febrero de 1988). "Sinus, consinus, tangens". Microklan . Wydawnictwo Czasopismo i Książek Technicznych SIGMA: 23. ISSN 0860-1941 . 
  9. ^ Golonka, Tadeusz (abril de 1988). "Tym razem bez lutownicy [Ahora sin soldador]". Informatico . Instytut Wydawniczy Nasza Księgarnia, Warszawa: 8. ISSN 0860-5696 . 
  10. Капульцевич, А.; Капульцевич, И.; Евдокимов, А. (1995). "Programa de Компиляция игровых". Как написать игру для ZX Spectrum . ПИТЕР, San Petersburgo, (Piter Ltd.). pag. 132. ISBN  5-7190-0052-6. Conecte esta clase de programa con el compilador TOBOS FP. На сегодняшний день он, пожалуй, самый популярный, хотя это и не означает, чт о о самый лучший, самый быстродействующий, самый, самый... Все дело в том, что он самы й простой в обращен ии и накладывает на исходную программу меньше всего огра ничений.
  • ToBoS-FP en World of Spectrum
  • ToBoS-FP en Speccy
  • Inteligencia artificial moderna y aprendizaje profundo en ZX Spectrum
  • Manual de TOBOS-FP en inglés - transcripción
  • Manual de TOBOS-FP en polaco - transcripción
  • Escaneo TOBOS-FP de las instrucciones originales en polaco.