Author Topic: Creating a bootable disk for PCW  (Read 222 times)

0 Members and 1 Guest are viewing this topic.

Offline tjohnson

  • Supporter
  • 6128 Plus
  • *
  • Posts: 672
  • Country: gb
    • index.php?action=treasury
  • Liked: 219
  • Likes Given: 134
Creating a bootable disk for PCW
« on: 14:25, 18 April 19 »
Hi all, how does the boot process work for the PCW, there is some code stored in a rom and that .ems and .emt files are involved.  How would one go about creating a bootable disk?

Offline JonB

  • 6128 Plus
  • ******
  • Posts: 699
  • Country: gb
  • Liked: 185
  • Likes Given: 44
Re: Creating a bootable disk for PCW
« Reply #1 on: 14:33, 18 April 19 »
It's proper nasty.

No ROM. The boot code comes from the printer control chip and is not alterable.

https://www.chiark.greenend.org.uk/~jacobn/cpm/pcwboot.html

If you want to create a bootable floppy, you need to connect a 3" drive to a PC (using an adapter, especially for the power connector as it is not wired the same way) and use a tool like http://www.cpcwiki.eu/index.php/CPCDiskXP to write a disk image file to the physical media.

Or, you could ask someone on here to provide a copy!
« Last Edit: 14:35, 18 April 19 by JonB »

Offline GeoffB17

  • 6128 Plus
  • ******
  • Posts: 532
  • Country: gb
  • PCW since '85
  • Liked: 114
  • Likes Given: 7
Re: Creating a bootable disk for PCW
« Reply #2 on: 16:03, 18 April 19 »
Someone in the UK is selling a PCW boot disk right now, I think it was about £4 plus p&p.   It was a later version of the system, with Loco 2 on the other side.   Just use Google search for Amstrad PCW 8256.

I've had a quick look at your (various) previous posts, and I note references to CP/M and a 6128.   If you have a working 6128, and a 3" drive, then you might well have part of what you need to create a disk that will boot on a PCW, as the disk format may be the same.   May just be a matter of writing a disk image, which can be downloaded, although you'd need to get the image onto the 6128 to write it, which may still be a problem.

When I saw your name, I thought we've had discussions before that suggested you HAD a bootable PCW, but maybe not?   Were you using a PcW 9512+ booting from a 3.5" disk?

Aargh - just checked on ebay - the disk was there yesterday, now it is not.   It was an 'auction' sale though, do they normally vanish that quickly?

Another option, if you buy some used disks, it's likely that one or more will be boot disks anyway, as the normal format and disk copy processes could have transferred some of the boot code, and then you will need just the .EMS file which you could copy onto the disk on a 6128?   I think?   Or maybe it's not so simple that way around?   I know a PCW can read various CPC formats, but can a 6128 access any of the PCW formats?

Geoff
« Last Edit: 16:21, 18 April 19 by GeoffB17 »

Offline tjohnson

  • Supporter
  • 6128 Plus
  • *
  • Posts: 672
  • Country: gb
    • index.php?action=treasury
  • Liked: 219
  • Likes Given: 134
Re: Creating a bootable disk for PCW
« Reply #3 on: 16:29, 18 April 19 »
Hi guys my question probably wasn't very clear, I actually have a boot disk but how does the boot process work does the computer have done code on the chip that then looks on the disk that then tells the computer we've to find the next file?  The whole boot process is a mystery to me 

Offline GeoffB17

  • 6128 Plus
  • ******
  • Posts: 532
  • Country: gb
  • PCW since '85
  • Liked: 114
  • Likes Given: 7
Re: Creating a bootable disk for PCW
« Reply #4 on: 16:41, 18 April 19 »
Aha - that explains things!!

Thanks for the clarification.

The article that JonB links to will help.

The process IS a little wierd, yes.

There is a little piece of code hidden in the printer chip in the PCW that is invoked when the machine starts, this loads the code in the first 512 bytes of the floppy disk and passes control to that code.

That code is a little cleverer, this looks on the disk for the .EMS file (or later the .EMT, but that's another story) and loads that file, and passes control to that.

The .EMS contains the full system, this file loads, puts the various parts into the right places in memory, sets up CP/M, and then passes control to CP/M.

The process for LocoScript is similar, but specialised for LS and NOT CP/M.

The process is well documented, the code that's in the printer chip has been accessed and published (the HOW is interesting) and obviously the code that is in the first sector of the disk can be accessed and disassembled.

Geoff

Offline JonB

  • 6128 Plus
  • ******
  • Posts: 699
  • Country: gb
  • Liked: 185
  • Likes Given: 44
Re: Creating a bootable disk for PCW
« Reply #5 on: 16:42, 18 April 19 »
It is documented in the link I posted previously..

Also http://seasip.info/Unix/Joyce/hardware.pdf but it is derived from information in the first link.

The short story (as already mentioned) is there is no boot ROM. So you can't easily get it to boot off another device (although it has been done, but not easily).

So, it goes something like this:
  • First stage boot loader comes from the printer ROM. The code is copied into RAM at 0000h and executed.
  • This code reads track zero of the first floppy disk and loads it into RAM (not sure what the address is). The code contains a very minimal BDOS & BIOS implementation - enough to be able to find and read the EMS/EMT file on the A: drive - which it then loads into RAM at the proper place; then it jumps to the BIOS cold boot routine and you (eventually) see the prompt.
  • The cold boot routine loads/installs FID files (field installable drivers) if any are present on A:, and the version of CP/M supports FIDs.

Hopefully that explains it in enough detail?