Author Topic: LocoScript 2-4 character set  (Read 2702 times)

0 Members and 1 Guest are viewing this topic.

Offline JohnElliott

  • CPC664
  • ***
  • Posts: 123
  • Country: gb
  • Liked: 53
  • Likes Given: 3
LocoScript 2-4 character set
« on: 02: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.
 


Offline Alpha

  • CPC464
  • **
  • Posts: 3
  • Country: pt
  • Liked: 0
  • Likes Given: 3
Re: LocoScript 2-4 character set
« Reply #1 on: 15:11, 17 December 20 »
Lower case "a", "u" circumflex missing.
All upper case for acute, grave, circumflex, tilde and cedilla missing.

Can those be added ?

Offline JohnElliott

  • CPC664
  • ***
  • Posts: 123
  • Country: gb
  • Liked: 53
  • Likes Given: 3
Re: LocoScript 2-4 character set
« Reply #2 on: 16:47, 17 December 20 »
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.

Offline JohnElliott

  • CPC664
  • ***
  • Posts: 123
  • Country: gb
  • Liked: 53
  • Likes Given: 3
Re: LocoScript 2-4 character set
« Reply #3 on: 23:50, 22 December 20 »
That page is now part of a general collection of articles on PCW character redefinition: https://www.seasip.info/Unix/PSF/Amstrad/index.html

Offline JTN

  • CPC464
  • **
  • Posts: 9
  • Country: gb
    • CP/M and PCW info
  • Liked: 6
  • Likes Given: 0
Re: LocoScript 2-4 character set
« Reply #4 on: 18:20, 23 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:
Quote
Extending 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.
Quote
New 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.)
« Last Edit: 18:29, 23 December 20 by JTN »

Offline JohnElliott

  • CPC664
  • ***
  • Posts: 123
  • Country: gb
  • Liked: 53
  • Likes Given: 3
Re: LocoScript 2-4 character set
« Reply #5 on: 00:56, 24 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 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).

Offline JTN

  • CPC464
  • **
  • Posts: 9
  • Country: gb
    • CP/M and PCW info
  • Liked: 6
  • Likes Given: 0
Re: LocoScript 2-4 character set
« Reply #6 on: 01:30, 24 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.)

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.)

(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.

Offline JohnElliott

  • CPC664
  • ***
  • Posts: 123
  • Country: gb
  • Liked: 53
  • Likes Given: 3
Re: LocoScript 2-4 character set
« Reply #7 on: 19:44, 24 December 20 »
I've done a quick and dirty scan and slung it up here. (It probably won't stay there forever.)

Thanks, safely downloaded.

Offline JohnElliott

  • CPC664
  • ***
  • Posts: 123
  • Country: gb
  • Liked: 53
  • Likes Given: 3
Re: LocoScript 2-4 character set
« Reply #8 on: 04:27, 09 January 21 »
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.

Offline JohnElliott

  • CPC664
  • ***
  • Posts: 123
  • Country: gb
  • Liked: 53
  • Likes Given: 3
Re: LocoScript 2-4 character set
« Reply #9 on: 22:09, 14 January 21 »
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.)

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.

Offline jevicac

  • CPC664
  • ***
  • Posts: 149
  • Country: es
  • Liked: 123
  • Likes Given: 41
Re: LocoScript 2-4 character set
« Reply #10 on: 23:26, 14 January 21 »

Offline jevicac

  • CPC664
  • ***
  • Posts: 149
  • Country: es
  • Liked: 123
  • Likes Given: 41
Re: LocoScript 2-4 character set
« Reply #11 on: 14:01, 15 January 21 »
Sorry, the download enabled was not yet in the previous link so I'll leave it here. Cheers

Offline JohnElliott

  • CPC664
  • ***
  • Posts: 123
  • Country: gb
  • Liked: 53
  • Likes Given: 3
Re: LocoScript 2-4 character set
« Reply #12 on: 20:44, 15 January 21 »
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).


Offline robcfg

  • Supporter
  • 6128 Plus
  • *
  • Posts: 2.408
  • Country: se
  • 8-Bit Technomancer
    • index.php?action=treasury
  • Liked: 1093
  • Likes Given: 2653
Re: LocoScript 2-4 character set
« Reply #13 on: 22:53, 15 January 21 »
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.

Offline JohnElliott

  • CPC664
  • ***
  • Posts: 123
  • Country: gb
  • Liked: 53
  • Likes Given: 3
Re: LocoScript 2-4 character set
« Reply #14 on: 03:53, 16 January 21 »
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
'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.
« Last Edit: 04:13, 16 January 21 by JohnElliott »

Offline jevicac

  • CPC664
  • ***
  • Posts: 149
  • Country: es
  • Liked: 123
  • Likes Given: 41
Re: LocoScript 2-4 character set
« Reply #15 on: 10:05, 16 January 21 »

´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

Offline JTN

  • CPC464
  • **
  • Posts: 9
  • Country: gb
    • CP/M and PCW info
  • Liked: 6
  • Likes Given: 0
Re: LocoScript 2-4 character set
« Reply #16 on: 16:17, 16 January 21 »
8000 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.)

That 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.

Offline JTN

  • CPC464
  • **
  • Posts: 9
  • Country: gb
    • CP/M and PCW info
  • Liked: 6
  • Likes Given: 0
Re: LocoScript 2-4 character set
« Reply #17 on: 17:13, 16 January 21 »
Getting a bit off-topic:
The '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)

* loco203.png
(4.24 kB, 800x600 - viewed 148 times)


  • 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.

Offline JohnElliott

  • CPC664
  • ***
  • Posts: 123
  • Country: gb
  • Liked: 53
  • Likes Given: 3
Re: LocoScript 2-4 character set
« Reply #18 on: 21:41, 16 January 21 »
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.

Offline JohnElliott

  • CPC664
  • ***
  • Posts: 123
  • Country: gb
  • Liked: 53
  • Likes Given: 3
Re: LocoScript 2-4 character set
« Reply #19 on: 21:47, 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?


Offline JohnElliott

  • CPC664
  • ***
  • Posts: 123
  • Country: gb
  • Liked: 53
  • Likes Given: 3
Re: LocoScript 2-4 character set
« Reply #20 on: 00:34, 19 January 21 »
J203LOCO.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? )

Offline JohnElliott

  • CPC664
  • ***
  • Posts: 123
  • Country: gb
  • Liked: 53
  • Likes Given: 3
Re: LocoScript 2-4 character set
« Reply #21 on: 21:23, 19 January 21 »
OK, here's my sketch of LocoScript version history: http://www.seasip.info/Unix/Joyce/locohist.html

Offline GeoffB17

  • 6128 Plus
  • ******
  • Posts: 793
  • Country: gb
  • PCW since '85, more CP/M than Loco
  • Liked: 169
  • Likes Given: 9
Re: LocoScript 2-4 character set
« Reply #22 on: 00:22, 20 January 21 »
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

Offline JohnElliott

  • CPC664
  • ***
  • Posts: 123
  • Country: gb
  • Liked: 53
  • Likes Given: 3
Re: LocoScript 2-4 character set
« Reply #23 on: 00:29, 05 March 21 »
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).