Showing posts with label Software. Show all posts
Showing posts with label Software. Show all posts

Monday, 2 March 2020

EddIcon Resized

It has been some time since there was time to update this blog. That does not mean that nothing has been happening in QL heaven. Here is a glimpse at some of things happening here. A Q68 was acquired and one irritation was the EddIcon could not run on the 512x384 16 bit colour resolution screen as it only used a window 640x480. So after some devling about the innards of EddIcon here is a revamped version that has 3 window izes. The original, a medium sized window that fits in to 512x384 and a small window suitable for 512x256. Besides the window changes there have been some other changes to the interface and functionality. Sprites can now be saved out with RLE compression, as mode 64, 32 and mode 4. Mode 4 sprites can also be saved as a series of data statements to be incorporated in to QPTR superbasic. There are still some bugs in the colour handling routines so its not for release yet.

Other things that have been looked at are a simplified method of automatically creating and editing simple Qascade menus., reading and writing to FAT16 formatted CF cards on the Q60 and printing through the serial port via a RPi, Python and CUPs to a WiFi printer, a bit like the retroprint project. The difference being that CUPs handles text, HTML, and postscript. All of these modes work on the system. Quill doc files still have to be converted.

All these things might be looked at in future posts but at the moment here is EddIcon in 3 sizes.

 

Friday, 10 May 2019

File Handlers for QL systems



A recent addition to the list of QL software file managers,  QLCommander written by Andrew of the QL Forum, made us here think of all the other similar programs also available.

There are too many to list but include former commercial programs like QTOP and CUEshell :


 The ubiquitous QPAC2 files thing:

 And programs like QcdEze for CDROMs :


And so on. It is amazing that so many of them written sometime ago adapt so well to newer emulators and hardware developments of the QL.

Thursday, 8 November 2018

PERFECTION by Digital Precision perhaps not so perfect.

For those QL users who are using an emulator or repalcement QL motherboard system such as a Qx0, a Q68 or an Aurora based system and make use of the higher resolution screens none of the word processors, Xchange(Quill), Text87plus4 or Perfection are ideal. All now have patches that allow them to use resolutions higher than 512x256 but each has it's limitations.

On the Q68 here a word processor that handles the defacto standard QL Quill format documents is preferred. All 3 can do this. In addition the program needs to be able to accept and open a document via FileInfo 2. Now Xchange(Quill) can do this as can Text87plus4 with the correct commands supplied to FI2 to enable the process. Perfection does not seem to be able to do this. In addition the program also need to be able to adapt to a higher resolution than 512x256. Xchange can do this but only to 512x512 which is inconvenient if the screen vertical resolution is less than 512 and more than 256. On the Q68 512x364 is preferred to make full us of 16bit colour. Text87plus4 can adapt but it's user interface is awful. Perfection with the patch that upgrades it to v6a12 can adapt to almost any vertical resolution through its bespoke configuration system but it cannot open a file via FI2, unless there is a way unknown to QLHeaven hidden in its wordy manual. So here is a way to tweak Perfection to allow it to open _doc files via FI2. A startup macro that instructs it to load its configured default document must also be created as Perfections default macro. Below is the SBASIC wrapper that needs to be compiled and launched via FI2 to make it all happen :



This short program patches the desired file into perfections configuration block after a copy is made to the ram disk, to avoid inadvertently corrupting the master copy.

Obviously Sdev$ and Ddev$ would need to be changed for other systems or could be changed by a config block if one was added.

Here is the system in action :




Monday, 22 October 2018

Answer to a question on the QLforum



In answer to polka's question in the QL Forum, here is a snippet of my boot code that allows the selection of multiple hardware configurations using a single boot file and to load alternative operating systems if desired.

The key elements are a timed loop that will start a default configuration if nothing is selected during the timeout period. Otherwise if an alternative configuration is chosen a file that indicates the selected cofiguration is written to the primary partition of the hard disk. This is used after the configuration of smsq/e is loaded and started by the boot file to set up the drivers and programs for the previously selected configurations.Nothing is written to these file but they could be used to add different adaptions to the boot.  



1000 REMark Overwrite the ROM SMSQ/E 2.91
1010 :
1020 REMark -- Mount Win2_,Win3_& Win4_ to make immediatly available --
1030 WIN_DRIVE 2,0,1 : WIN_DRIVE 3,0,2 : WIN_DRIVE 4,0,3 : ft=0
1040 REMark for the moment DONT automatically mount all drives except backup
1050 REMark AS DISK IS NOT ATTACHED
1060 REMark for the 1ST IDE SLAVE channel
1070 REMark WIN_DRIVE 5,1,0:WIN_DRIVE 6,1,1:WIN_DRIVE 7,1,2:WIN_DRIVE 8,1,3
1080 REMark for the 2ND IDE MASTER channel
1090 REMark WIN_DRIVE 5,2,0:WIN_DRIVE 6,2,1:WIN_DRIVE 7,2,2:WIN_DRIVE 8,2,3
1100 :
1110 WINDOW #0;SCR_XLIM(#0),SCR_YLIM(#0),0,0:CSIZE#0,0,0:INK#0,2:PAPER#0,0:CLS#0
1120 IF PEEKS$(2,3)='RES': GO TO 1930
1130 :
1140 WINDOW #1;256,128,128,64:INK#1,4:PAPER#1,0
1150 PAPER#1,0
1160 INK#1,7:PRINT "F1";:INK#1,4:PRINT " for SMSQ/E 3.33 (QMAC) + FAT32"
1170 INK#1,7:PRINT "F2";:INK#1,4:PRINT " for SMSQ/E 3.33 (QMAC) + QUBide"
1180 INK#1,7:PRINT "F3";:INK#1,4:PRINT " for SMSQ/E 3.33 (QMAC) + Win5-8"
1190 INK#1,7:PRINT "F4";:INK#1,4:PRINT " for SMSQ/E 3.33 + FAT16"
1200 PRINT
1210 INK#1,7:PRINT "F5";:INK#1,4:PRINT " for Test Versions of SMSQE & QPAC2"
1220 INK#1,7:PRINT "F6";:INK#1,4:PRINT " for QDOS Classic"
1230 INK#1,7:PRINT "F7";:INK#1,4:PRINT " for Mode4 SMSQ/E 3.32"
1240 INK#1,7:PRINT "F8";:INK#1,4:PRINT " for SMSQE Compile Enviroment"
1250 INK#1,7:PRINT "F9";:INK#1,4:PRINT " for SMSQ/E 3.13 mode 4 and PSION Chess"
1260 PRINT
1270 PRINT "   Timeout SMSQ/E 3.33 (QMAC) Win1-4 only"
1280 :
1290 timeout=DATE
1300 timeout=timeout+15
1310 REPeat lp
1320 IF PEEKS$(2,3)='RES':EXIT lp
1330 key=CODE(INKEY$(#0))
1340 SELect ON key
1350 :
1360   =232 : REMark F1 overwrite the ROM with SMSQ/E 3.33
1370          OPEN_OVER#3,"Win1_DoMountFat32":CLOSE#3:key=0
1380          AT#0,2,12
1390          PRINT#0,"INSERT CADDY with FAT32 CF card. Press ANYKEY"
1400          PAUSE#0
1410          IF PEEKS$(2,3)<>'RES':LRESPR "Win1_SMS_Q40smsq333_ROM"
1420 :
1430   =236 : REMark F2 go with SMSQ/E 3.33 + QUBide
1440          OPEN_OVER#3,"Win1_DoQUBide":CLOSE#3:key=0
1450          AT#0,2,12
1460          PRINT#0,"INSERT CADDY with QUBide CF card. Press ANYKEY" : PAUSE#0
1470          IF PEEKS$(2,3)<>'RES':LRESPR "Win1_SMS_Q40smsq333_ROM"
1480 :
1490   =240 : REMark F3 go with SMSQ/E 3.33 and Wins 5-8
1500          OPEN_OVER#3,"Win1_DoMountAll":CLOSE#3:key=0
1510          AT#0,2,12
1520          PRINT#0,"INSERT CADDY with HD containing Win5-8. Press ANYKEY" : PAUSE#0
1530          IF PEEKS$(2,3)<>'RES':LRESPR "Win1_SMS_Q40smsq333_ROM"
1540 :
1550   =244 : REMark F4 Use the new version of SMSQ/E with 3.33
1560          OPEN_OVER#3,"Win1_DoFAT16":CLOSE#3:key=0  : AT#0,2,15
1570          PRINT#0,"INSERT CADDY with FAT16 CF card. Press ANYKEY" : PAUSE#0
1580          IF PEEKS$(2,3)<>'RES':LRESPR "WIN1_SMS_Q40smsq333_rom"
1590          REMark IF PEEKS$(2,3)<>'RES':LRESPR "WIN1_rom"
1600 :
1610   =248 : REMark F5 Test version of SMSQ/E
1620          OPEN_NEW#3,"Win1_TestQPAC2":CLOSE#3:AT#0,2,12
1630          IF PEEKS$(2,3)<>'RES':LRESPR "Win1_SMQ_smsq_q40_testrom"
1640 :
1650   =234 : REMark F6 load QDOS Classic
1660           LRESPR Win1_Classic_SoftRom_rext
1670           COPY Win1_CLASSIC_CLASSICr_rom TO ram1_CLASSICr_rom
1680           PRINT#0,"Wait for Drive Light to go out, then Press Anykey to continue"
1690           PAUSE
1700           SOFTROM ram1_CLASSICr_rom
1710 :
1720   =238 : REMark F7 boot Mode 4 from Win1_
1730          OPEN_NEW#3,"Win1_Mode4":CLOSE#3
1740          IF PEEKS$(2,3)<>'RES':LRESPR "Win1_SMS_Q40smsq332mode4_ROM"
1750 :
1760   =242 : REMark F8 Try SMSQ/E compile environment
1770          OPEN_NEW#3,"Win1_CmpEnv":CLOSE#3
1780          BEEP 5000,0
1790          IF PEEKS$(2,3)<>'RES':LRESPR "Win1_SMS_Q40smsq333_rom"
1800 :
1810   =246 : REMark F9 boot 3.13 into mode 4
1820          OPEN_NEW#3,"Win1_psionchess":CLOSE#3
1830          IF PEEKS$(2,3)<>'RES':LRESPR "WIN1_SMS_q40mode4_rom"
1840 :
1850   =250 : REMark F10 smsq/e 3.33
1860          IF PEEKS$(2,3)<>'RES':LRESPR "Win1_SMS_Q40smsq333_rom"
1870 :
1880 END SELect
1890 IF DATE>timeout
1900      key=0:IF PEEKS$(2,3)<>'RES':LRESPR  "Win1_SMS_Q40smsq333_rom":EXIT lp
1910 END IF
1920 END REPeat lp
1930 :
1940 drv$="WIN1_"         : REMark Boot default directory
1950 REMark -- LOAD Enviroment Variable support early --
1960 LRESPR(drv$&"env_bin") : REMark used by all c68 progs
1970 :
1980 errt=FOPEN("Win1_DoMountFAT32")
1990 IF errt>0
2000    CLOSE#errt:DELETE "Win1_DoMountFAT32"
2010    WIN_DRIVE 5,2,0,0,"QXL.WIN"
2020    OPEN_OVER#3,ram1_Win5dump: DIR#3,Win5_:CLOSE#3:DELETE ram1_Win5dump
2030    SETENV "HDTYPE=FAT32"
2040 END IF
2050 :
2060 errt=FOPEN("Win1_DoMountAll")
2070 IF errt>0
2080    CLOSE#errt:DELETE "Win1_DoMountAll"
2090    WIN_DRIVE 5,2,0:WIN_DRIVE 6,2,1:WIN_DRIVE 7,2,2:WIN_DRIVE 8,2,3
2100    SETENV "HDTYPE=ALLWINS"
2110 END IF
2120 :
2130 errt=FOPEN("Win1_DoFAT16")
2140 IF errt>0
2150    CLOSE#errt:DELETE "Win1_DoFAT16" : WIN_DRIVE 5,2,0,0
2160    SETENV "HDTYPE=FAT16"
2170 END IF
2180 :
2190 errt=FOPEN("Win1_CmpEnv") : IF errt>0 :CLOSE#errt:LRUN Win1_Bootsmq_bas
2200 :
2210 errt=FOPEN("Win1_psionchess")
2220   IF errt>0
2230     CLOSE#errt:DELETE Win1_psionchess
2240     EX Win1_PRG_PSION_Chess_exe:STOP
2250   END IF
2260 :
2270 errt=FOPEN("Win1_Mode4")
2280 IF errt>0
2290    CLOSE#errt:DELETE "Win1_Mode4"
2300    REMark LRESPR("Win3_QTOP_thorgold_bin"):EX Win3_QTOP_TINDEX : STOP
2310    LRUN Win4_StartUp_Qx0boot
2320 END IF
2330 :
2340 TK2_EXT:IF VER$(1)>2.95 AND VER$(1)<=3.03:Set_Mode4_Colours
2350 key=KEYROW(7):REMark press "x" to load ProWess
2360 :
2370  IF VER$(1)<3 .03="" span="">
2380    LRESPR ('WIN1_CACHEMODES_rext') :WRITETHROUGH
2390    REMark LRESPR ('WIN1_MOVP4SMSQ60_cde')
2400 END IF
2410 REMark although MOVEP instruction removed from SMSQ/E 3.00 on there are some in Text87
2420 REMark so LRESPR 060 patch anyway
2430 LRESPR ('WIN1_MOVP4SMSQ60_cde')
2440 :
2450 IF VER$(1)=2.98 AND (key=0 OR key=8):DISP_SIZE 1024,512
2460 IF VER$(1)=2.99 AND (key=0 OR key=8):DISP_SIZE 1024,512
2470 :
2480 IF key=64:STOP
2490 :
2500 REMark -- Set Some Default Devices --
2510 IF SCR_LLEN>=128
2520   PWSDIR$="Win1_PWS_"  : REMark ProWesS default directory
2530 END IF
2540 DATA_USE "WIN1_" : PROG_USE "WIN1_"
2550 DEV_USE 1,Win1_PRG_EDT_ : REMark Editor 2.05 directory
2555 DEV_USE 8,FLP1_ : REMark make a device for CUE shell on Q68 to access a floppy
2560 :
2570 REMark set Colour Theme
2580 IF VER$(1)>=3.03:EX Win1_COLOUR_CoCo_setconf_bas;"Win1_COLOUR_CoCo_Themes_greys_thm,0"
2590 IF VER$(1)>=3.03:EX Win1_COLOUR_CoCo_setconf_bas;"Win1_COLOUR_CoCo_Themes_cream_thm,1"
2600 IF VER$(1)>=3.03:EX Win1_COLOUR_CoCo_setconf_bas;"Win1_COLOUR_CoCo_Themes_blueme_thm,2"
2610 IF VER$(1)>=3.03:EX Win1_COLOUR_CoCo_setconf_bas;"Win1_COLOUR_CoCo_Themes_copper_thm,3"
2620 :
2630 REMark set up window colours
2640 tcol=0
2650 IF VER$(1)>2.95:COLOUR_PAL:tcol=176
2660 WINDOW #0;SCR_XLIM(#0),SCR_YLIM(#0),0,0:CSIZE#0,0,0:INK#0,4:PAPER#0,tcol:CLS#0
2670 :
2680 BGCOLOUR_24 $919FCC : REMark BGCOLOUR_24 $AAAAFF : REMark BGCOLOUR_24 $878787
2685 REMark BGCOLOUR_24 $0
2690 : REMark Can we use ProWess
2700 errt=FOPEN("Win1_DoProWess")
2710 IF errt>0 : key=8 : CLOSE#errt:DELETE Win1_DoProWess
2720 IF SCR_LLEN>=128 AND key=8
2730   IF PWSDIR$(LEN(PWSDIR$))<>"_" THEN PWSDIR$=PWSDIR$&'_'
2740   LRESPR PWSDIR$&"ext_dll_rext"
2750   LRESPR PWSDIR$&"ext_syslib_rext"
2760   LRESPR PWSDIR$&"ext_global_rext"
2770   LRESPR PWSDIR$&"ext_PWbasic_rext"
2780   dd_err=0 : REMark for DATAdesign error trapping
2790 END IF
2800 :
2810 :
2820 REMark -- LOAD Extended environment extensions --
2830 IF VER$(1)>3.02
2840   LRESPR(drv$&"menu_rext")
2850   errt=FOPEN("Win1_TestQPAC2")
2860   IF errt>0
2870     CLOSE#errt:DELETE Win1_TestQPAC2
2880     LRESPR(drv$&"QPAC2_test")
2890   ELSE
2900     REMark LRESPR(drv$&"QPAC2_patch")
2910     LRESPR(drv$&"QPAC2_145a")
2920   END IF
2930 ELSE
2940   LRESPR("Win1_PRG_QD98_Menu_rext_old")
2950   LRESPR("Win1_TOOLS_QPAC2_Qpac2_139")
2960 END IF
2970 LRESPR ("Win1_QPTR")
2980 :
2990 REMark - Any more resident extensions?
3000 REMark --LOAD SERNET --
3010   BAUD 2,115200  : SER_ROOM 2,4096
3020   LRESPR("Win1_PRG_SERNET_sernet_rext")
3030   SNET 2
3040   SERNET
3050 :
3060 REMark install PFF virutal device whatever
3070 LRESPR ("Win1_PrinCtrl_PFF_bin")
3080 :
 and so on for loading extensions.

Saturday, 6 October 2018

Reading Long File Names on FAT formatted SD cards

FAT drivers have been embedded in smsq/e for some time. Initially FAT12 for DOS formatted floppy disks and now FAT16 for the Q68. One frustrating thing about the drivers is that they only support the DOS short file name naming convention of 11 characters. This truncates names and makes it difficult to identify files in a list of similarly named files as shown.


The conventions for constructing LFNs can be found on the internet so after a bit of SBASIC work here is a first iteration of a menu system to manage files via their LFN on FAT 16 formatted disks.

The interface still needs a bit of work.

Multiple files can now be copied, moved or deleted from the FAT16 formatted SDHC card using their LFNs.

Saturday, 20 January 2018

More of Win Drives and QPAC2 FILES thing and .jpgs


The previous post outlined how the Q60 here at QL Heaven could have its hard drive configuration modified at boot time using a caddy system to swap the drives. The next question to consider is how the system and programs running within it can know which combination of drives had been configured at boot. The answer is the Environment Variables extension. This is LRESPRed in the boot file just before the selected drive configuration is mounted by the boot. As the drives are mounted the environment variable HDTYPE is set to a value that can be checked in a program to findout which Win drives were mounted without having to test each drive individually and trap errors. Below is a little SBASIC snippet of code that pops up a files window for each drive mounted of whichever type. Set up a little icon in launchpad, click on that and there are files windows for all drives. Handy if you cannot exactly remember which drive had that subdirectory you were looking for. 


1000  EXEP 'Files';'\DWin1_ \C1,2 \O',"Win1_"
1010  EXEP 'Files';'\DWin2_ \C1,2 \O',"Win2_"
1020  EXEP 'Files';'\DWin3_ \C1,2 \O',"Win3_"
1030  EXEP 'Files';'\DWin4_ \C1,2 \O',"Win4_"
1040  IF (GETENV$("HDTYPE")="ALLWINS")
1050    EXEP 'Files';'\DWin5_ \C3,2 \O',"Win5_"
1060    EXEP 'Files';'\DWin6_ \C3,2 \O',"Win6_"
1070    EXEP 'Files';'\DWin7_ \C3,2 \O',"Win7_"
1080    EXEP 'Files';'\DWin8_ \C3,2 \O',"Win8_"
1090  END IF
1100  IF (GETENV$("HDTYPE")="FAT32")
1110      EXEP 'Files';'\DWin5_ \C3,2 \O',"Win5_"
1120  END IF

The program in action below. There are two screen scrapes below. Both .jpg files created on the Q60. The difference between them is the size of the file - approximately 50k for an identical image. The larger file was created using QTImage while the smaller file was created using cjpeg a small very old utility obtained on a floppy disk from PD library some time in the 1990s.

Finally rereading the QPAC2 documentation revealed that the files thing can filter files as well as sorting them. Selecting the F2 source menu, inputting a source drive such as Win2_and adding an extension, Win2__bas will list only all the files with that extension in the given directory. Sometimes useful for searching out that file hidden in plain sight. 


Friday, 22 December 2017

Great QDOS/SMSQ/E Download Sites

In the QL Forum there has been talk of new black box noobs to the QL world. So if any read this blog,  here are the best, in the opinion of QL Heaven, download sites for free QL software, listed with the name of the site owner. Click on the link.

1. Dilwyn Jones

2. Thiery Godefroy

3. Wolfgang Lenerz
     smsq/e
     personal software
     smsqmulator

4. Bob Spelten

5. George Gwilt

6. London QL + Quanta Group

7. Daniel Terina

8. Marcel Kilgus


And then there are some that are group efforts : Black Phoenix
                                                                             The Repository

Finally the on line SBASIC/SuperBasic manual

Sunday, 17 December 2017

SMSQ/E 3.32 AND FAT32 QXL.win DEVICE

This new facility is an excellent addition for Qx0 users. Back up of Qx0 hard disks and transfer of their contents to other QL systems has been problematic up to now. QPC2 uses the QXL.win file as hard disk, Supergold card QLs  would use the QUBide hard disk interface, while the disk structure of the Qx0 hard disk was based on the Atari hard disk conventions. Three incompatible systems. Here at QL Heaven the Q60 hard disk was originally backed up to compact flash cards via a CF reader, and then in addition it was copied to external hard disks via a caddy system. Both of the hard disk IDE slots on the primary ISA card are attached to caddies to allow swapping of IDE disks, not hot swapping however. Latterly the contents of the Q60 hard disk were exported to a QPC2 QXLwin file via the serial port to a USBwiz device. This was a magical system but never entirely stable or compatible with all file handling programs so the transfer was somewhat hard work.



Now there is the FAT32 QXL.win device. This is at an early stage of development but works just fine. QLHeaven can report the trouble free transfer of the entire contents of the Q60 hard disk to a QXL.win file masquerading as Win5_. A FAT 32 CFcard was used simply because one and a CF card reader were to hand. Below is the card reader sitting inside the caddy.


Below is a view of the caddies on the Q60. Find SMSQ/E 3.32 here


Monday, 7 August 2017

SMSQE modules

Which modules are in which versions of smsq/e? How many versions of smsq/e are there?
The answers are below.

1.


DOS2_QL Stuff_SMSQ_smsq331_GoldCard.bin

000392C0 length of file

0000005C    000154       SMSQ System Loader
000001E4    0001B2       Gold Card Initialisation for SMSQ
00000700    003010  3.31 SMSQ
00003742    000000       SMSQ Cache Handling Code
00003974    0094F4       SBASIC
0000CE8E    000278       SMSQ Initialisation - GC
0000D150    0002CA       SMSQ Initialisation - SGC
0000D464    001538       SMSQ Messages
0000E9CA    00067A       SMSQ GOLD Keyboard Tables
0000F08E    00026C       SMSQ GOLD ABC Keyboard Tables
0000F348    001C4A       SBASIC Messages
00010FC2    000330       SMSQ GOLD ABC Keyboard
00011338    0050AC       SMSQ GOLD Drivers
00016416    009890       SMSQ GOLD CON Driver
0001FCDA    00012C       SMSQ QIMI Driver
0001FE44    004D70  2.07 SMSQ Window Manager
00024BE8    005AD8  3.08 SMSQ GOLD DV3 Drivers
0002A6F6    001060       SMSQ Net Driver - GC
0002B79C    001084       SMSQ Net Driver - SGC
0002C866    0030C8  2.31 HOTKEY System 2
0002F95E    000D8C       SMSQ System sprites
0003071E    006A8A       SBASIC Procedures
000371DA    000B8E  1.02 SMSQE HOME Thing
00037D98    0014E4  1.00 Recent thing



000392A8 end of file
 
2.
 
Win1_STARTUP_Aurora_bin

000412CC length of file

0000005C    000154       SMSQ System Loader
000001E4    0001B2       Gold Card Initialisation for SMSQ
00000700    003010  3.31 SMSQ
00003742    000000       SMSQ Cache Handling Code
00003974    0094F4       SBASIC
0000CE8E    000278       SMSQ Initialisation - GC
0000D150    0002CA       SMSQ Initialisation - SGC
0000D464    001538       SMSQ Messages
0000E9CA    00067A       SMSQ GOLD Keyboard Tables
0000F08E    00026C       SMSQ GOLD ABC Keyboard Tables
0000F348    001C4A       SBASIC Messages
00010FC2    000330       SMSQ GOLD ABC Keyboard
00011338    0050AC       SMSQ GOLD Drivers
00016416    009890       SMSQ GOLD CON Driver
0001FCDA    007EF2       SMSQ GOLD 8 bit CON Driver
00027C06    00012C       SMSQ QIMI Driver
00027D70    004D70  2.07 SMSQ Window Manager
0002CB14    000D8C       SMSQ System sprites
0002D8D4    005AD8  3.08 SMSQ GOLD DV3 Drivers
000333E2    001060       SMSQ Net Driver - GC
00034488    001084       SMSQ Net Driver - SGC
00035552    0030C8  2.31 HOTKEY System 2
0003864A    0000AE       Initialise QL ROMs
0003872A    000B8E  1.02 SMSQE HOME Thing
000392E8    006A8A       SBASIC Procedures
0003FDA4    0014E4  1.00 Recent thing


000412B4 end of file

 
3.



DOS2_QL Stuff_SMSQ_smsq331_SMSQE.PRG

00044C9C length of file

00000042    000154       SMSQ System Loader
000001CA    00056A       Atari Hardware Initialisation for SMSQ
00000B5E    003006  3.31 SMSQ Fast RAM
00003BA4    003010  3.31 SMSQ
00006BE6    000000       SMSQ Cache Handling Code
00006E18    0094F4       SBASIC
00010332    00061E       SMSQ Atari Initialisation
0001098A    001538       SMSQ Messages
00011EF0    0010B0       SMSQ Atari Keyboard Tables
00012FDA    001C4A       SBASIC Messages
00014C54    006A8A       SBASIC Procedures
0001B710    007276  3.08 SMSQ Atari DV3
000229B4    0057B6       SMSQ Atari Serial Drivers
000281A4    008270       SMSQ Atari Mono Driver
00030456    009AC2       SMSQ Atari QL Driver
00039F5A    004D70  2.07 SMSQ Window Manager
0003ECFE    0030C8  2.31 HOTKEY System 2
00041DF6    000D8C       SMSQ System sprites
00042BB6    000B8E  1.02 SMSQE HOME Thing
00043774    0014E4  1.00 Recent thing


00044C84 end of file

4.
DOS2_QL Stuff_SMSQ_smsq331_SMSQEQXL.EXE

00047F2E length of file

00003638    000154       SMSQ System Loader
000037C0    000122       QXL Hardware Initialisation for SMSQ
00003C18    003010  3.31 SMSQ
00006C5A    000000       SMSQ Cache Handling Code
00006E8C    0094F4       SBASIC
000103A6    0013F0       SMSQ QXL Initialisation
000117CE    001538       SMSQ Messages
00012D34    000F0C       SMSQ QXL Keyboard Tables
00013C78    001C4A       SBASIC Messages
000158F2    006CF0       SBASIC Procedures
0001C614    0051AE       SMSQ QXL Drivers
000217F2    009888       SMSQ QXL QL CON Driver
0002B0B0    007D68       SMSQ QXL 16 bit CON Driver
00032E52    004D70  2.07 SMSQ Window Manager
00037BF6    0010B8       SMSQ QXL Net Driver
00038CE2    006256  3.08 SMSQ QXL DV3
0003EF64    0030C8  2.31 HOTKEY System 2
0004205C    003D70       SMSQ System sprites
00045E00    000B8E  1.02 SMSQE HOME Thing
000469BE    0014E4  1.00 Recent thing
00047ECE    000010       SMSQ QXL Enable Caches 


00047F16 end of file

5.

DOS2_QL Stuff_SMSQ_smsq331_SMSQE.bin

0004EE26 length of file

00000048    000154       SMSQ System Loader
000001D0    0000AA       QPC Hardware Initialisation for SMSQ
00002164    002ECA  3.31 SMSQ
00005060    000000       SMSQ Cache Handling Code
00005292    0094F4       SBASIC
0000E7AC    000AB8       SMSQ QPC Initialisation
0000F29C    001538       SMSQ Messages
00010802    000F0C       SMSQ QPC Keyboard Tables
00011746    001C4A       SBASIC Messages
000133C0    006A8A       SBASIC Procedures
00019E7C    004E46       SMSQ QPC Drivers
0001ECF2    009772       SMSQ QPC QL CON Driver
0002849A    007A30       SMSQ QPC 16 bit CON Driver
0002FF04    007C04       SMSQ QPC 8 bit CON Driver
00037B42    004D70  2.07 SMSQ Window Manager
0003C8E6    003D70       SMSQ System sprites
0004068A    00640E  3.08 SMSQ QPC DV3
00046AC4    0030C8  2.31 HOTKEY System 2
00049BBC    000EC6       QPC SBASIC Procedures
0004AAB8    000DF6       CD-Audio driver
0004B8DE    0011F0       DOS device driver
0004CB00    00020E       IP devices driver
0004CD40    000B8E  1.02 SMSQE HOME Thing
0004D8FE    0014E4  1.00 Recent thing


0004EE0E end of file
  
6.

DOS2_QL Stuff_SMSQ_smsq331_Q40.rom

00043614 length of file

00000096    000154       SMSQ System Loader
0000021E    0002EC       Q40 Hardware Initialisation for SMSQ
0000079E    002FCA  3.31 SMSQ
0000379A    0000F6  2.01 SMSQ Copyback Cache Handling Code
000038D2    000022       SMSQ Q40 copyback cache tidy
00003930    0094F4       SBASIC
0000CE4A    001538       SMSQ Messages
0000E3B0    000F0C       SMSQ Q40 Keyboard Tables
0000F2F4    001C4A       SBASIC Messages
00010F6E    006A8A       SBASIC Procedures
00017A2A    0066D2  3.08 SMSQ Q40 DV3
0001E128    005C2C       SMSQ Q40 Serial Drivers
00023D8C    0097F4       SMSQ Q40 QL CON Driver
0002D5B6    007B7E       SMSQ Q40 16 bit Console Driver
00035172    004D70  2.07 SMSQ Window Manager
00039F16    003D70       SMSQ System sprites
0003DCBA    0030C8  2.31 HOTKEY System 2
00040DB2    000B8E  1.02 SMSQE HOME Thing
00041970    0014E4  1.00 Recent thing
00042E80    000526       SMSQ Q40 Initialisation
000433DE    000164  1.01 Initialise Q40/Q60 Cache modes


000435FC end of file
 
7.

DOS2_QL Stuff_SMSQ_smsq331_SMSQE

0004B632 length of file

00000018    000154       SMSQ System Loader
000001A0    00005C       Java Emul Initialisation for SMSQ
000003F6    002F18  3.31 SMSQ
00003348    002ED2  3.31 SMSQ
0000624C    000000       SMSQ Cache Handling Code
0000647E    0094F4       SBASIC
0000F998    001538       SMSQ Messages
00010EFE    00067A       SMSQ GOLD Keyboard Tables
000115C2    001C4A       SBASIC Messages
0001323C    006A8A       SBASIC Procedures
00019CF8    005AD2       SMSQ JAVA Drivers
0001F7F8    00965A       SMSQ GOLD CON Driver
00028E86    007C2A       SMSQ JAVA 8 bit CON Driver
00030AEA    0079D2       SMSQ JAVA 16 bit CON Driver
000384F8    004D70  2.07 SMSQ Window Manager
0003D29C    0051C4  3.08 JAVA DV3
00042488    0030C8  2.31 HOTKEY System 2
00045580    003D70       SMSQ System sprites
00049324    000B8E  1.02 SMSQE HOME Thing
00049EE2    0001F6       IP devices driver
0004A10A    0014E4  1.00 Recent thing


0004B61A end of file
 
That is an impressive 7 variants of smsqe for the curators to update, certainly more than Microsoft countenances in windows.