Nun ist der Fehlerfund im BASIC (fehlerhafte Multiplikation) gut 4 Jahre her und wer A sagt, muß auch B sagen und C und D ... bis hin zu Z: also habe ich das originale BASIC ROM in meinem VC-20 jetzt außer Betrieb genommen (der Chip mit der Teilenummer 901486-01, zusammen mit noch ein paar anderen Teilen - die tun's alle noch):
Stattdessen tut jetzt ein EPROM mit Kundenkonfiguration seinen Dienst (gebaut und programmiert von vintage-computers.it). Zwei Kollegen in der Elektronik-Werkstatt am Institut hatten sich die Zeit genommen, das ROM auszulöten und dafür einen Sockel zu setzen:
... Detailansicht in voller Schönheit:
Jedenfalls vertüddelt sich *mein* VC-20 beim Multiplizieren nicht mehr, wie man schön im verlinkten Video sehen kann (basic-p.avi - Achtung: ca. 16 MB!). Probiert's mal auf dem eigenen Rechner aus!
Das nachfolgende Programm (download) erstellt aus einem Dump des originalen BASIC ROMs (*.bin file ohne Ladeadresse!) das gepatchte ROM:
- 10 OPEN2,8,2,"BASIC,S,R"
- 11 OPEN3,8,3,"BASIC-P,S,W"
- 12 READB,C,D
- 13 FORT=49152TO57343
- 14 GET#2,A$:A=ASC(A$+CHR$(0))
- 15 IFB<>TTHEN18
- 16 IFA<>CTHENPRINT"BAD SOURCE FILE!":GOTO20
- 17 A=D:READB,C,D
- 18 PRINT#3,CHR$(A);
- 19 NEXT
- 20 CLOSE3
- 21 CLOSE2
- 22 :
- 23 DATA 55900,131, 90
- 24 DATA 55901,217,223
- 25 DATA 57178,170,165
- 26 DATA 57179,170, 41
- 27 DATA 57180,170,133
- 28 DATA 57181,170,112
- 29 DATA 57182,170,165
- 30 DATA 57183,170, 40
- 31 DATA 57184,170,133
- 32 DATA 57185,170, 41
- 33 DATA 57186,170,165
- 34 DATA 57187,170, 39
- 35 DATA 57188,170,133
- 36 DATA 57189,170, 40
- 37 DATA 57190,170,165
- 38 DATA 57191,170, 38
- 39 DATA 57192,170,133
- 40 DATA 57193,170, 39
- 41 DATA 57194,170,160
- 42 DATA 57195,170, 1
- 43 DATA 57196,170,152
- 44 DATA 57197,170, 74
- 45 DATA 57198,170,133
- 46 DATA 57199,170, 38
- 47 DATA 57200,170, 96
- 48 DATA -1, -1, -1