Manfredini66 hat geschrieben: ↑29.08.2024 20:21
Ich hatte gehofft, meine BASIC Programme für den Plotter sofort starten zu können, ohne den R:Handler aus der 850 Interfacebox zu laden. Aber leider kam ein Error 130. Auf der Systemdiskette zum OS++ ist auch ein Programm "SETHDL" drauf, damit kann man offensichtlich den R: Handler laden bzw. aktivieren. Aber auch damit gibt es den Error 130.
Daher werde ich michjetzt mal mit der Anleitung zum OS++ intensiver beschäftigen. Leider ist das auch wieder nur in englisch....
Das ist sooooo lange her, daß ich mit dem 850er herumgespielt habe... also ohne Gewähr! Vielleicht erinnere ich mich völlig falsch...
Meine mich zu erinnern, daß das kleine DOS-Programm, was das 850er initialisiert, den eigentlichen Handler aus dem ROM des 850 lädt und dieser generell relozieriert wird. Sprich: Der kleine Loader liest MEMLO aus, packt den Handler dorthin und verschiebt MEMLO um die paar Bytes für den Handler.
Um das mit Turbo-Basic in Gang zu bekommen, mußt Du TB als Aurorun.sys (oder entsprechend, je nachdem, welches DOS Du nimmst) booten und ein kleines Autorun.bas von TB laden lassen, was dann mit BRUN den Loader aktiviert. Ich hatte folgenden Trick angewendet (sinngemäß):
10 GOTO 1000
20 REM hierkommtirgendeintotalerschwachsinnreinhauptsacheichbekommevielplatzvoll
30 REM hierkommtirgendeintotalerschwachsinnreinhauptsacheichbekommevielplatzvoll
40 REM hierkommtirgendeintotalerschwachsinnreinhauptsacheichbekommevielplatzvoll
....
200 REM hierkommtirgendeintotalerschwachsinnreinhauptsacheichbekommevielplatzvoll
210 REM hierkommtirgendeintotalerschwachsinnreinhauptsacheichbekommevielplatzvoll
1000 BRUN "D:850RS232.COM"
1010 NEW
Der Sinn der Dummy-REM-Zeilen ist es, die ersten 1-2 KByte nach MEMLO, also wo auch TB den Code des Basic-Programms ablegt, quasi mit unnützen Daten zu füllen. Der Interpreter springt gleich nach 1000, lädt den Loader, der die REM Zeilen überschreibt, aber das stört nicht, weil der Interpreter sequentiell die 1010 ausführt: NEW. Durch das NEW werden die Pointer neu gesetzt.
Was ich nicht mehr weiß, ob das langte oder ob man TB-interne Pointer auch patchen mußte...
Probiere Dich mal in dieser Richtung. Und: Der Loader lädt den RS232 Handler *nur* nach einem Power-Cycle des Rechners. Genauer: Das 850er muß vor dem XL/XE eingeschaltet werden, dann schaltet man den Rechner ein. Das 850 prüft die READY Leitung der SIO (einfach +5V) und gibt den Treiber exakt *einmal* frei. Machst Du einen Kaltstart am XL/XE, ohne die Stromzufuhr zu unterbrechen, gibt´s beim nächsten Versuch ein Fehler #130.
Ich habe mir seinerzeit einen Taster (nicht Schließer, sondern Unterbrecher!) in das 850 (in die READY-Leitung, Pin 10 der SIO) eingebaut, um den Power-Cycle zu simulieren und den XL/XE zu schonen...