S_Edit
The story behind S_Edit screen editor is a long one. It has begun with me buying the McGrawHill Assembler suite, which also contains a full screen editor, written in SuperBASIC. In these times, I did not know a lot of extensions but find out, that an extension named "ROOM_bin" was loaded first. This was the time, when I started to examine the various hidden things. ROOM_bin was written by Tony Tebby to let the user add or delete an entry in an array "on the fly", here taken for a line of text.
A bit later, I have got Tony Tebby's early things in a Quanta Disk, there also was an editor called "sedit", written in SuperBASIC. Tony always used this for his QPLQ program, a program initially for daisywheel printers (see old Sandy or Liberation Software manuals), later for the Epson LQ printer series, to print left and right justified text with proportional spacing, but with non-proportional printer founts. Who ever has a letter from Tony from the 80's may know. About QPLQ, I will make an extra entry.
This was quite a good start to enhance S_Edit and make use of the standard ways to delete, insert a line and such on. Even "sedit" uses "ROOM_bin", so I enhanced it a lot, even with Block handling. But there was no way to edit binary files, so another solution was needed-
A few weeks later, it seemed, that an array shouldn't be the last answer, so machine code programming was needed and S_Edit's single linked lists for the text was programmed. Not so pioneering as QD's double linked lists but a great step forward. S_Edit now was able to edit binary files and save them, even if they were JOBs.
S_Edit also contains a config 1 block, a self written routine, where SuperBASIC functions return the configured values. Liberation Software have also taken this for later versions of QLiberator,
And so, S_Edit got its first launch at Dilwyn Jones Computing. It was simple, no Pointer Environment, simply, because that was the only way to get it in a 640k QL plus Professional Publsher.
A lot years later, I enhanced S_Edit with the now possible additional WMAN colour system and a fixed size for bigger resolutions. Marcel Kilgus then corrected a bug in S_Edit's heap extensions, which occurred running the program under SMSQ/E.
In the beginning, there was a needful way to put the users name in the QLiberated code and check, if any of the ASCII code in the file was changed. This was (and is) very simple. I wrote a little SuperBASIC program to put the name and a checksum into the code and test this at start time, when S_Edit was EXecuted. If anything was changed, the program aborted. Just look at things, Talent and Sellasoft had done, my way was so very simple, Dilwyn may know. I even did not think, there was a must to do so, I just want to test, if that is possible. And it is. All ASM extensions used by S_Edit were put into the QLiberated code without any initialisation, so hard to extract from the file. All extensions also had names like "EXT1", "EXT2" and so on, so the user can't identify, what they are for. Hard times, weren't they?
Title: S_Edit
Language: QLiberator compiled SuperBASIC with machine code
Author: Ralf Reköndt
Publisher: Dilwyn Jones Computing
Year of Publication: 1988
Platforms Suitable for: All standard QLs. All expanded memory QLs
Commercial Status: Freeware
Price in 1988: £15
Reviewed: Unknown
Latest Version available from: http://www.dilwyn.qlforum.co.uk/editview/sedit63.zip