Just for fun, after viewing an ICL Basic program on the OPD I thought I'd attempt to move one over to the QL and get it running there.
For example, on the ICL OPD 'Welcome' cartridge there is a file also called 'Welcome' and when loaded on the OPD (Tonto) with the usual lrun mdv1_welcome, it looks very much like a QL SuperBasic program with some different keywords etc. The Welcome program when run on the OPD just introduces the OPD functions and invites you to press menu numbers that then display further info (it loads files named t1 to t9 that contain text) - quaint, nothing remarkable, but something that I thought QLers might like to see and something that should be preserved.
So, using Dave Walkers OPD/QL Interchange program I was able to read the OPD Welcome cart and transfer the files onto the QL. Once in the QL world I then copied them via QNET to the fat1_ of my Q68.
I popped the Q68 SD card into my PC and was half expecting to be able to open the 'Welcome' file and be presented with a SuperBasic looking program for editing and then experimentation in an emulator.... but not so! The 'Welcome' fine is not human readable when using a text editor.
So, as the Welcome file can only be used on an OPD running the ICL version of basic loaded into RAM I assume that that program is what turns the gobbledegook into structured readable Basic on the screen?
I also tried loading the OPD driver on the QL which creates new opd1_ and opd2_ devices and with load opd1_welcome attempted to load the welcome basic file from the original OPD cartridge. The result of that was 'bad parameter'.
Anyway, if anyone else wants to have a look, here are the contents of the ICL 'Welcome' cartridge, zipped in windows (because for some reason the 'ICLBASIC' file cannot be seen within a QL emulator environment). Also attached is a QL Zipped version of just the 'Welcome' file, as Qemulator kept adding a header to it, so must see it as being an executable.
Getting OPD Basic over to a QL
- Chr$
- QL Wafer Drive
- Posts: 1316
- Joined: Mon May 27, 2019 10:03 am
- Location: Sachsen, Germany
- Contact:
Getting OPD Basic over to a QL
- Attachments
-
- Welcome.zip
- (40.45 KiB) Downloaded 218 times
-
- qzip.zip
- (3.44 KiB) Downloaded 190 times
https://QXL.WIN
Collector of QL related computers, accessories and QL games/software.
Ask me about felt pads - I can cut them to size and they have proved excellent for mdv data recovery.
Collector of QL related computers, accessories and QL games/software.
Ask me about felt pads - I can cut them to size and they have proved excellent for mdv data recovery.
- Chr$
- QL Wafer Drive
- Posts: 1316
- Joined: Mon May 27, 2019 10:03 am
- Location: Sachsen, Germany
- Contact:
Re: Getting OPD Basic over to a QL
I managed to get the plain text ICL basic 'Welcome' prog over to a QL! And then to here:
Lots of things that QL's don't like or do differently. e.g. that 'SEGMENT' thing on line 2, which is rather like RESPR, so I've read. I had a play, but I'm not expert enough to get it to work in a QL environment.
Code: Select all
1 REMark 3 Dec 84 * WELCOME 4.0 * Ë ICL 1984
2 DIM n(8):sg=SEGMENT(7):INK 6:PAPER 0:WINDOW 480,240,0,0
3 WHEN ERRor :CLS:AT 2,3:PRINT'System error'\'Please start again':PAUSE 500:BYE
4 LBYTES mdv1_t1,sg,0:s=0:f$=CHR$(192):bb=1
5 BEEP 12,9,0,6,12,9,0,6,12,9,0,6,9,30:p1
6 hd'WELCOME MENU':s=0
7 PRINT'1 Introduction'\\'2 Noticeboard'\\'3 Telephone Directory'\\
8 PRINT'4 Telephone Control'\\'5 Voice Response'\\'6 Computer Access'\\
9 PRINT'7 Calculator'\\'8 BASIC'\\'9 Housekeeping'\\
10 PRINT'0 Exit from Welcome Program':AT bb+bb+1,27:PRINT'Just seen'
11 b$=INKEY$(-1):b=CODE(b$)-48:IF b=bb:GO TO 13
12 IF b>0 AND b<10:AT b+b+1,27:PRINT'Loading':LBYTES 'mdv1_t'&b$,sg,0:bb=b
13 SELect ON b
14 =0:p0:=1:p1:=2:FOR c=8,13,16,14,17:CLS:pt c:g
15 =3:FOR c=8,10,8,17,10,9,10:CLS:pt c:g
16 =4:FOR c=9,19,3,9,14,12
17 IF c=3:AT 13,0:CLS 2:ELSE CLS
18 pt c:g:END FOR c
19 =5:FOR c=11,12:CLS:pt c:g
20 =6:FOR c=14,15,14,15,15:CLS:pt c:g
21 =7:FOR c=8,19,9,24,8
22 CLS:pt c:IF c=24:FOR x=155304,155308:POKE_L x,-1
23 IF c=19 OR c=24:PAUSE 300
24 g:END FOR c
25 =8:FOR c=11,12,11,13,11,8:CLS:pt c:g
26 =9:FOR c=9,9,14,13,11,11,12:CLS:pt c:g
27 =REMAINDER :BEEP 20,5:GO TO 11
28 END SELect :GO TO 6
29 DEFine PROCedure pt(u):FOR w=1 TO u
30 FOR j=1 TO 8:n(j)=PEEK(sg,s):s=s+1
31 a$='':FOR j=1 TO n(8):a$=a$&CHR$(PEEK(sg,s)):s=s+1
32 IF n(5)=255:
33 PAPER 2:CSIZE 2,0:FOR y=3 TO 18,20:AT y,n(6):PRINT a$
34 NEXT w:END IF
35 INK n(1):PAPER n(2):CSIZE n(3),n(4):AT n(5),n(6)
36 IF a$='':FOR j=0 TO 7:PRINT INKEY$(-1);
37 PRINT a$:PAUSE n(7)
38 END FOR w:END DEFine
39 DEFine PROCedure hd(h$)
40 CLS:CSIZE 2,1:t=(40-LEN(h$))/2:AT 0,t:PRINT h$
41 CSIZE 2,0:AT 3,0:END DEFine
42 DEFine PROCedure f
43 CSIZE 2,0:INK 6:PAPER 0:AT 21,0:PRINT FILL$(CHR$(204),40)
44 AT 22,0:PRINT f$;'1 next page ';f$;'7 main menu ';f$;'0 exit'
45 REPeat k
46 fk=CODE(INKEY$(-1))
47 SELect ON fk:=241:RETurn :=247:RETurn :=240:p0:=REMAINDER :BEEP 20,5
48 END REPeat k:END DEFine
49 DEFine PROCedure p0
50 hd'END OF WELCOME':PRINT"That is the end of the Welcome Program"\\
51 PRINT"The scripts in section 3 of the OPD"
52 PRINT"Welcome Package take you through"
53 PRINT"using the facilities of the OPD":PAUSE 255:BYE:END DEFine
54 DEFine PROCedure bx(w,h,x,y)
55 CSIZE 2,0:fa$=FILL$('_',w):AT y,x+1:PRINT fa$
56 FOR z=1 TO h:AT y+z,x: PRINT'|':AT y+z,x+w+1:PRINT'|'
57 AT y+h,x+1:PRINT fa$:END DEFine
58 DEFine PROCedure p1:CLS:pt 6:CLS
59 pt 2:bx 14,8,12,0:pt 1:bx 32,13,3,9:bx 6,7,28,14:pt 1:bx 16,7,11,14
60 pt 2:bx 21,3,12,10:pt 1:bx 5,11,4,10:pt 1:CLS:pt 12:CLS:pt 8
61 FOR i=2 TO 18 STEP 4
62 FOR j=25 TO 35 STEP 5:bx 3,3,j,i
63 END FOR i
64 pt 12:bx 7,3,15,18:pt 4:CLS:pt 18:REPeat k
65 IF CODE(INKEY$(-1))=241:EXIT k
66 BEEP 20,5:PAPER 2:AT 17,0:PRINT'Please try again':PAPER 0
67 END REPeat k:CLS:pt 1:CLS:pt 14:f:END DEFine
68 DEFine PROCedure g:f:IF fk=247:GO TO 28:END IF :END DEFine
https://QXL.WIN
Collector of QL related computers, accessories and QL games/software.
Ask me about felt pads - I can cut them to size and they have proved excellent for mdv data recovery.
Collector of QL related computers, accessories and QL games/software.
Ask me about felt pads - I can cut them to size and they have proved excellent for mdv data recovery.