Ein Spaziergang im Netz findet ab und zu bekannte Dinge aus eigener Feder. Links der Startbildschirm einer Demo, die die neuen Möglichkeiten des erweiterten ZX-Basics im Jahr 1985 zeigt.
Mit Taste 1 erfolgt die Grafikerzeugung gepuffert, mit Taste 2 wird direkt auf den Bildschirm gezeichnet. Die Software wurde 1986/6 in der Zeitschrift Computer Kontakt, Heft 20, Seite 24 veröffentlicht und beschrieben. Das Internet-Archiv bietet den Artikel auch noch 2023 als Scan an. An anderen Stellen im Netz findet man lediglich die 3787 Bytes, also den Code selber, der ohne Dokumentation kaum nutzbar ist. Oftmals scheint man ein Spiel dahinter zu vermuten. Wer diese Demo "spielen" möchte, kann das auf der Seite Unreal Speccy Portable tun. Die Betätigung des Buttons Jugar en linea lädt das Basic-Programm und das Spiel beginnt mit Taste 1 oder 2.
Neben einen damals beliebten kleineren Zeichensatz, brachte die Erweiterung die Fenstertechnik auf den Schirm und allerlei neue Grafikmöglichkeiten, wie z. B. eine Füllung mit Mustern, so dass Torten- und Balkendiagramme einfach erstellt werden konnten. Die mit einem * eingeleiteten neuen Befehle sind in nebenstehenden Artikel dokumentiert.
Der Kern besteht oder bestand aus den genannten 3787 Bytes, wobei jedes Bit handverlesen und geprüft ist. Programmiert wurde in Z80-Assembler, da das Spectrum ROM ebenfalls in dieser Sprache verfasst ist. Damals gab es einen HISOFT GENS3 Assembler, der die vorüberlegten Zeilen in die Sprache des Z80 übersetzte. Der Quelltext mit Anfang und Ende:
Copyright ? HISOFT 1983
All rights reserved
Pass 1 errors: 00
10 ;************************
20 ;PRODOS 1.1 (C)HJB 8.85
30 ;MIT HATCH UND MATCH
40 ;2.SCREEN=ALTSCR
50 ;HIER:ALTSCR=53000
60 ;GESAMTLAENGE DES PROG:
70 ;3787 BYTES
80 ;6144 BYTES FUER ALTSCR
90 ;---- SUMME
100 ;9931 BYTES (LEIDER)
110 ;
120 ;FALLS JEMAND EINE ANDERE
130 ;METHODE FUER HATCH KENNT
140 ;BITTE MELDEN!!!!!!!!!!!!
150 ;************************
160
2530 170 SYNTAX EQU #2530
1C82 180 GETOP1 EQU #1C82
1C7A 190 GETOP2 EQU #1C7A
1E94 200 GETA EQU #1E94
1E99 210 GETBC EQU #1E99
EA60 220 ORG 60000
EA60 2A3D5C 230 LD HL,(23613)
EA63 0179EA 240 LD BC,START
EA66 71 250 LD (HL),C
EA67 23 260 INC HL
EA68 70 270 LD (HL),B
EA69 2A4F5C 280 INIT LD HL,(#5C4F)
EA6C 110F00 290 LD DE,15
EA6F 19 300 ADD HL,DE
EA70 1162EC 310 LD DE,OUTPUT
EA73 73 320 LD (HL),E
EA74 23 330 INC HL
EA75 72 340 LD (HL),D
EA76 C374EB 350 JP NEW
360 ;______________________
EA79 3A3A5C 370 START LD A,(23610)
EA7C FDCB46C6 380 SET 0,(IY+70)
EA80 FE0B 390 CP 11
EA82 2826 400 JR Z,NONS
EA84 CD3025 410 ERROR CALL SYNTAX
EA87 200D 420 JR NZ,RUNERR
EA89 2A5D5C 430 SYNERR LD HL,(23645)
EA8C 225F5C 440 LD (23647),HL
EA8F 2179EA 450 LD HL,START
EA92 E5 460 PUSH HL
EA93 C3B712 470 JP #12B7
EA96 CD0313 480 RUNERR CALL #1303
EA99 FD3600FF 490 LD (IY+0),255
EA9D 2A595C 500 LD HL,(23641)
EAA0 CDA711 510 CALL #11A7
EAA3 2179EA 520 LD HL,START
EAA6 E5 530 PUSH HL
EAA7 C3B412 540 JP #12B4
...
...
...
F916 220202 19700 DEFB """,#02,#02
F919 FF1919 19710 DEFB #FF,#19,#19
F91C 191919 19720 DEFB #19,#19,#19
F91F 191F88 19730 DEFB #19,#1F,#88
F922 8C8E8F 19740 DEFB #8C,#8E,#8F
F925 8E8C88 19750 DEFB #8E,#8C,#88
F928 F000 19760 DEFB #F0,#00
19770 *D+
19780 *L+
6378600 19790 NOP
Pass 2 errors: 00
Table used: 3402 from 3500
Inzwischen soll ja sogar ein Raspberry Pi Pico mit RP2040 einen ZX-Spectrum als Hardware nachbilden können. Vielleicht erfreuen sich die 3787 Bytes auch in 2023 erneut hoher Beliebtheit! Hier ein Link für Liebhaber.