News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_JohnElliott

LocoScript 2-4 character set

Started by JohnElliott, 01:49, 15 December 20

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

JohnElliott

This is something I've been trying to compile: Unicode mappings for the characters in SCRCHAR.JOY.
Unfortunately, the only LocoScript manual I had to hand was for LocoScript 2 and didn't include some of the characters added later. So I've had to guess various of the characters from the shapes -- which, in the case of the combining accents, is tricky when the shapes look like flyspecks on the screen.

You can see where I've got to so far at http://www.seasip.info/Unix/PSF/Amstrad/Scrchar/ -- suggestions for corrections or improvements are welcomed.



Alpha

Lower case "a", "u" circumflex missing.
All upper case for acute, grave, circumflex, tilde and cedilla missing.

Can those be added ?

JohnElliott

I can't change what Locomotive put in the file, only try to describe it to the best of my ability.

But my recollection is that within LocoScript, the last 32 characters (the standalone accents) can be combined with letters to provide accented characters not covered within SCRCHAR.JOY.

JohnElliott

That page is now part of a general collection of articles on PCW character redefinition: https://www.seasip.info/Unix/PSF/Amstrad/index.html

JTN

#4
Quote from: JohnElliott on 01:49, 15 December 20
This is something I've been trying to compile: Unicode mappings for the characters in SCRCHAR.JOY.
Unfortunately, the only LocoScript manual I had to hand was for LocoScript 2 and didn't include some of the characters added later. So I've had to guess various of the characters from the shapes -- which, in the case of the combining accents, is tricky when the shapes look like flyspecks on the screen.

You can see where I've got to so far at http://www.seasip.info/Unix/PSF/Amstrad/Scrchar/ -- suggestions for corrections or improvements are welcomed.
I've got the following documents (on paper), which I can scan selected bits of if you are interested? They came from a LocoScript 3 bundle purchase in 1995.

"LocoScript 3 User Guide" (not supplement) "L3G/JUNE 1994".
Appendix III "Character Set & Keyboard Layout", pp243-252 includes keyboard diagrams, and names for the flyspecks like "Rough breathing - with tilde".

"LocoScript v3.06/3.07 (also LocoScript 2 v2.56/2.57) Installation". From p28:
QuoteExtending the range of characters to include greek breathing marks

Since v2.28, the LocoScript Character Set has included:

       
  • Greek breathing marks as additional accents - both on their own and in combination with acute, grave, tilde and the greek circumflex
  • a range of specialised Greek characters, including digamma, koppa, sampi, lunate sigma, stigma and the thousands mark, and
  • d' and t'
[...]
New users and people upgrading from LocoScript 2.11 or earlier are automatically able to type these extra characters. But if you used LocoScript v2.12 - 2.27 at all, adding these characters requires special steps because of the way the Installation program is careful to preserve the keyboard and printer files from your current Start-up discs."
It then goes on to describe replacing KEYBOARD.JOY.

It also has some how-to-type-a-given-character keyboard layouts on pp39-40.
QuoteNew users and existing users who have opted to add the new characters should therefore ignore the key combinations given in versions of the LocoScript 2 User Guide or PCW9512 User Instructions dated before SEPT 90 and instead take the details from the following keyboard diagrams.
These look superficially the same as my LocoScript 3 user guide -- I haven't checked every detail.
The versions of LocoScript 2 for Hebrew/Arabic scripts might also be of interest. (I don't know if these used dedicated code points, or re-used the existing ones.)

       
  • Euro-Arabic LocoScript 2. Manual (but no software) at Frank Van Empel's site ("JUN 89").
    Curiously, this apparently required a keyboard dongle; not sure what for.
    (I'm sure I remember reading about this version in 8000/PCW Plus, but I can't find the issue now for more information.)
  • Hebrew LocoScript 2. Screenshots (but no software) at PCW Wiki.
    (Screenshot copyright 1990. In Dec 89 Howard Fisher was quoted as saying there'd be no such thing -- 8000 Plus issue #39 p55; cf correction in #40.)

JohnElliott

Appendix III of the user guide would probably be the most helpful to me, if you've got the time to scan it. I've got a similar installation booklet for LocoScript 2.54/3.04.

A detailed version history of LocoScript might be an interesting thing to compile. For something so ubiquitous in the PCW universe, it seems to have gained very little attention in recent years. (For example, in the notes you quote it's obvious that something significant happened to the internal structure between versions 2.11 and 2.12, but I've no idea what).

JTN

Quote from: JohnElliott on 23:56, 23 December 20
Appendix III of the user guide would probably be the most helpful to me, if you've got the time to scan it.
I've done a quick and dirty scan and slung it up here. (It probably won't stay there forever.)

Quote from: JohnElliott on 23:56, 23 December 20
A detailed version history of LocoScript might be an interesting thing to compile. For something so ubiquitous in the PCW universe, it seems to have gained very little attention in recent years.
I have loads of random LocoScript working discs of unclear provenance. I should go through them all and extract all the distinct versions sometime. (I think you've had all my interesting CP/M EMS.)

Quote from: JohnElliott on 23:56, 23 December 20
(For example, in the notes you quote it's obvious that something significant happened to the internal structure between versions 2.11 and 2.12, but I've no idea what).
Is that when KEYBOARD.JOY became a thing? The LocoKey manual also talks about 2.12 being significant.

JohnElliott

Quote from: JTN on 00:30, 24 December 20I've done a quick and dirty scan and slung it up here. (It probably won't stay there forever.)

Thanks, safely downloaded.

JohnElliott

I've  updated my character redefinition page again, this time with details of some more PD font packages: UDG.BAS, and my additional fonts for SETFONT and PRINTIT. I've packaged all the fonts as .COM files, for ease of use.

JohnElliott

Quote from: JTN on 17:20, 23 December 20Euro-Arabic LocoScript 2. Manual (but no software) at Frank Van Empel's site ("JUN 89").
Curiously, this apparently required a keyboard dongle; not sure what for.
(I'm sure I remember reading about this version in 8000/PCW Plus, but I can't find the issue now for more information.)

8000 Plus issue 37 maybe? That suggests the dongle is purely for copy protection. Presumably, like the Keymouse, it writes a signature in one or more of the 'keyboard joystick' bytes which LocoScript looks for.


jevicac

Sorry, the download enabled was not yet in the previous link so I'll leave it here. Cheers

JohnElliott

Thanks! The two HEBREW.DSK files appear to have a problem which I've seen before in other DSK images -- the header says there are 43 tracks, but in fact there are only 40. This means they'll get rejected as corrupt by recent versions of JOYCE and LibDsk. Fortunately it's a simple matter to patch byte 0x30 of the file header to hold the actual number of tracks.
These files appear to have been generated by CPDRead v3.24, while the other one I saw was created by SAMdisk. Not sure why two different utilities would create files with the same anomaly, but there you go.
HEBREW2.DSK also seems to have a sector missing from each track (a different sector on each track).


robcfg

The reason for the 'anomaly' is that many people tell those programs to read up to 43 tracks, just in case there are special formats or copy protections, but still store the unread tracks on the image file.


Maybe emulators shouldn't rely on the stored number of tracks, as the real machines, or treat empty tracks as unused or non-existent.

JohnElliott

#14
That'll be worked around in the next releases of JOYCE / LibDsk, whenever they are. Postel's principle and all.

The 'Script' newsletters at archive.org provide some useful hints about LocoScript version history. So far I've only examined the first eight, from which I've learned:

       
  • Version 2.00 couldn't do screen dumps to the dot-matrix printer - this was restored in version 2.01.
  • Versions 2.00 and 2.01 had "problems with the use of codes in phrases".
  • Prior to 2.12, there were two separate number series: 2.00-2.06 for the 8000 PCWs, 2.10-2.11 for the 9512. These supported only the built-in printers plus FX80-compatible dot matrix and D630-compatible daisywheel printers.
  • 2.12 introduced switchable keyboard layouts, user-definable characters with LOCOCHAR, font compilation with CHARKIT, and a wider range of supported printers. This caused a version bump to the format of the .#xx font files.
  • A version supporting hard drives was announced concurrently with 2.12, but the .FID loadable driver mechanism doesn't seem to show up until later (it's present in 2.29, but doesn't seem to be there in  2.16).
  • Issue 2 (January 1988) also has a screenshot of "CP/M 2.0H" which only has a 54k TPA rather than the usual 61k -- presumably the missing 7k of common memory was given over to hard drive support (or Locomotive could build development versions with a smaller TPA for other reasons)
  • Not all of the intermediate versions between 2.12 (September 1987) and 2.16 (~July 1988) were released. Some had breaking bugs found after the discs had already been mastered.
  • One correspondent wrote that they'd been using a CP/M startup file called M14CPM3 (rather than the normal J14CPM3). This wasn't produced by Locomotive, who hadn't heard of it but suspected it was "some hacked version" to support an SCA printer interface.
  • Version 2.20 added LocoFile and support for 24-pin printers. Up to version 2.20, MATRIX.PRI contained a default font for the dot-matrix printer. Subsequently the default font was given its own file. This led to another version change in the .#xx font files, and a similar version bump to LocoChar.
  • Version 2.20 also introduced the installer program rather than users having to exchange their master discs for an upgrade.

jevicac


´I don´t know how those scans will be, but in PCWWiki we have them perfect in case it helps you.


http://www.habisoft.com/pcwwiki/doku.php?id=es:script

JTN

Quote from: JohnElliott on 21:09, 14 January 218000 Plus issue 37 maybe?
Thank you, that's what I was thinking of. (I missed it because it's not on the contents page, nor the yearly index.)

Quote from: JohnElliott on 21:09, 14 January 21That suggests the dongle is purely for copy protection.
Hm. Well, they were selling it for £85, and probably weren't going to sell many copies, and I guess the coding wasn't cheap.

JTN

Getting a bit off-topic:
Quote from: JohnElliott on 02:53, 16 January 21The 'Script' newsletters at archive.org provide some useful hints about LocoScript version history. [...]
I have a selection of disc images (all 180k) with different (English) LocoScript versions on them (I think I inherited some of these during a phase of hoovering up surplus PCWs). They are almost all working discs, so I'd have to scrub personal information before uploading them anywhere, but here is a summary from the point of view of EMS files -- if any one of them is particularly historically interesting, I could prioritise it. (Some of them also have LocoSpell, but I haven't catalogued exactly which.)

  • J20LOCO.EMS -- v1.20, © 1985, as shipped with some 8000 series
  • J42LOCO.EMS -- v1.42H, © 1986, shipped with ASD HD20 hard drive unit (alongside CP/M 1.7H which you've already seen)
  • J203LOCO.EMS -- v2.03, © 1987 (has a distinctive capital "S" in screen font, which I think is original)
  • J212LOCO.EMS -- v2.12, © 1987
  • J216LOCO.EMS -- v2.16, © 1987 (I think all my copies are patched with a locally modified screen font; maybe I saved the original somewhere)
  • J228LOCO.EMS -- v2.28b, © 1990 (with LocoMail, LocoFile)
  • J306LOCO.EMS / INSTE306.EMS -- v3.06b, © 1994 (inc original master discs + Printer Support Pack)
[attach=1]

Quote from: JohnElliott on 02:53, 16 January 21
  • One correspondent wrote that they'd been using a CP/M startup file called M14CPM3 (rather than the normal J14CPM3). This wasn't produced by Locomotive, who hadn't heard of it but suspected it was "some hacked version" to support an SCA printer interface.
I have some discs like this. I had a second-hand SCA interface with real-time clock, and it came with them. (Sadly I no longer have the hardware -- I sent it to SCA in 1994 as the Centronics port was apparently busted, and they never sent it back.)

From the on-disc manuals, it looks like the M14CPM3.EMS was probably shipped by SCA, but on one of my discs there are also what look like patches to vanilla EMS files: ems14pat.sub = "MLOAD A:M14CPM3.EMS=A:J14CPM3.EMS,EMS14" (with a short Intel HEX file EMS14.HEX), and there's an ems16pat.sub "for version 1.6 or 1.7", and a locopat.sub that apparently does something to the INSTALL.DRV of some version of LocoScript 2. It's not stated what the patches actually do. (I don't recall investigating this stuff at the time.) I think these are working discs (I'll check out the labels on the physical media), but they look fairly clean of personal info, so it probably wouldn't take too much effort to scrub them for upload if anyone is interested.

JohnElliott

Continuing...
At some point around 2.20 / 2.21, the version numbers became even for dot-matrix PCWs and odd for daisywheel PCWs.

       
  • 2.26/2.27 adds sheet feeder support.
  • 2.28/2.29 adds accessibility features (sticky shift keys, large screen characters) plus more Greek characters.
  • This is probably also where SCRCHAR.JOY was introduced as a separate file, rather than storing the full character set in the EMS file.
  • 2.30/2.31 adds the ability to work with documents exported by the PC version of LocoScript.
It seems they stopped issuing Script when the current version was 2.30/2.31. Later versions of LocoScript 2 that I'm aware of:

       
  • 2.32/2.33: Mentioned in the LocoScript 3.04/3.05 installation booklet -- I'm guessing this was the last 'classic' version of LocoScript 2.
  • 2.50/2.51 - 2.54/2.55: Correspond to LocoScript 3.00/3.01 - 3.04/3.05, without scalable font support. Presumably for daisywheel PCWs. They use the LocoScript 3 document format.

JohnElliott

Quote from: JTN on 16:13, 16 January 21
Getting a bit off-topic:I have a selection of disc images (all 180k) with different (English) LocoScript versions on them (I think I inherited some of these during a phase of hoovering up surplus PCWs). They are almost all working discs, so I'd have to scrub personal information before uploading them anywhere, but here is a summary from the point of view of EMS files -- if any one of them is particularly historically interesting, I could prioritise it.
I think 1.42H might be interesting. I've got 2.16 with its original font, so don't trouble yourself to dig for it.

Quote
From the on-disc manuals, it looks like the M14CPM3.EMS was probably shipped by SCA, but on one of my discs there are also what look like patches to vanilla EMS files: ems14pat.sub = "MLOAD A:M14CPM3.EMS=A:J14CPM3.EMS,EMS14" (with a short Intel HEX file EMS14.HEX), and there's an ems16pat.sub "for version 1.6 or 1.7", and a locopat.sub that apparently does something to the INSTALL.DRV of some version of LocoScript 2. It's not stated what the patches actually do. (I don't recall investigating this stuff at the time.) I think these are working discs (I'll check out the labels on the physical media), but they look fairly clean of personal info, so it probably wouldn't take too much effort to scrub them for upload if anyone is interested.
The HEX and SUB files would be the most interesting for me here. If the same patch applies to 1.6 and 1.7, that suggests they can't have been too different internally -- maybe 1.6 was the first with the new memory layout?


JohnElliott

Quote from: JTN on 16:13, 16 January 21J203LOCO.EMS -- v2.03, © 1987 (has a distinctive capital "S" in screen font, which I think is original)

That's also present in LocoScript 2.00 (screenshot of font attached -- I note that the characters are in a different order from SCRCHAR.JOY, so who's to say how they're encoded in an actual document file? )

JohnElliott

OK, here's my sketch of LocoScript version history: http://www.seasip.info/Unix/Joyce/locohist.html

GeoffB17

Thanks for this, John.

I got my PCW back when they first became available, and I'm pretty sure it was version 1.04 that came with it.  I have  Loco disk used for SoD that is marked on that basis.  I have copy corresp regarding me reporting a bug to Amstrad - I had a problem if I tried to finish (and save) a document at a point that it had filled the first page, and started the second page but there was nothing entered for the new page yet.   The system locked up, the document did NOT save, and the only way out was to restart, which lost the document.

I managed to avoid being in this situation again, and in due course I received a new disk, which was 1.20 - I'm pretty sure I was asked to return the previous disks, as I no longer have them.

I was using the system quite a bit, but I never noticed any other bugs.

Geoff

JohnElliott

To return to the original topic of character numbering, I've scanned the LocoScript booklet 'Designing Your Own Characters' (ie, the LocoChar instructions) and it includes a page listing characters by number -- which doesn't match how characters are laid out in SCRCHAR.JOY, but does seem to correspond to the order in the printer font files (understandable, since those are the same files that LocoChar is editing). The gaps from 256-287 and 336-345 contain the top and bottom halves of the large Π, Σ etc.


(If anyone wants the full scan of the manual, or of the LocoLink PC manual, let me know).

JohnElliott

Quote from: JohnElliott on 02:53, 16 January 21That'll be worked around in the next releases of JOYCE / LibDsk, whenever they are. Postel's principle and all.

Finally got round to doing it. JOYCE 2.2.15 is now released.

Powered by SMFPacks Menu Editor Mod