Yellow Pig's BBC Computer Pages

The BBC Master 512

About the 512 | System Disks | Software | Index

Creating the System Disks – Method 3

Method 3: Using disks after initial manual program entry

It might be that you cannot write the Master 512 system disk images on a PC, and neither can you connect the PC and BBC Computers by a serial cable. (It seems that some PCs just won't work with non-DOS disks, and a more modern PC may well have no COM port.)

However, as long as you have compatible-sized disk drives on your PC and Master 512 (either 5¼" drives on both machines, or 3½" on both) then it is still possible to transfer data between the two. Provided you can get the process started then you will be able to get all the data necessary for the system disks across to the BBC, and the disks can then be assembled there. (Original BBC Computer floppy disk drives were all 5¼" ones. It is possible, though, to connect 3½" drives to the BBC.)

Since you cannot make the PC write BBC disks (or you would be using Method 1) you have to make the BBC Computer read PC (ie DOS) disks. Once the Master 512 is booted up, it will read such disks easily of course. But this is the "Catch 22": You can't boot the Master 512 until you have created the system disks; you can't create the system disks until you can read DOS disks on the BBC; and you can't read DOS disks on the BBC until you have booted the Master 512!

The way round this is to do a bit of manual program entry on the BBC. A fairly simple program can be typed in which will allow something to be read from a DOS disk by the BBC Computer in native mode, and then the process can get going. All the resources are available from this page.


If you follow the procedure described below then you will type into the BBC computer a Basic program which will read a couple of files from a DOS floppy disk and save them on a BBC disk. One of these files is a "short boot image". It is a image of the non-blank part of a "short boot disk", from which you can boot the 512, but which only contains the system files and a few basic utilities. The other file copied across is another Basic program which will write this image to create the short boot disk.

The point of doing things in this rather round-about way is to make the initial Basic program as short as is reasonably possible, and so reduce the amount of typing necessary. It also makes it easier to adapt the process for a system with a hard disk and only one floppy drive. The idea of the "short boot image" is that as a file it is small enough to fit on a single 360kb DOS disk.

Once you have created this short boot disk, you can use it to boot up the Master 512. From there you can easily complete the boot disk. After this you can use one of the supplied utilities to format three 800kb disks to use as System Disks 2, 3 and 4, then you can copy all the system files to the four disks, bringing them to the 512 from the PC on DOS disks – they are saved as file archives for convenience.

Notes about the typed-in program

I have tried to design this procedure so that you do not need to do any more typing than necessary.

You have to enter a program manually to get the process started. The program does have to be able to read files from a DOS disk, and that is quite a complex task for the BBC computer to do. This means there is a limit to how short it can be made. Be careful typing in, especially with the indirection operators "?" and "!".

Beyond this, though, I have tried to avoid any complications. There is no point making the program find out what the user can very easily tell it, so please note the following:

Important: The program is written to work with a particular set-up. If yours is different you will need to make a few minor alterations. These are all indicated with REM statements, and they are all in the procedure PROCsetup.

As it stands the program works on a Master, and reads files from a 360kb (5¼") disk in the second floppy drive (ie DOS drive B:) and writes them to files on a BBC disk in Drive :0. Things you may need to change are:

         If you are using a Model B or B+ rather than a Master then you must change five register locations and two other values. Make the changes in lines 290 to 330 and line 410 – all described in the REM statements. (The five floppy disk control registers are in a different place on the Master from where there are in the B and B+, and for one of them the control bits appear in a different place within the register itself. If you do not change these then the program will not work on the Model B or B+. (I think these values are all you need to change, but I have only tried the program on a Master so I cannot promise. Get in touch with me if it still doesn't work.))
    If you are using 720kb (3½") disks then, because these are 80-track rather than 40-track disks, you must change the value of step% from 2 to 1 in line 490.
    If you need to change which drives are being used, then make the alterations indicated in line 410 to change the source drive, and in line 450 give the correct (BBC) name for the destination drive. These cannot be physically the same drive, though the destination could be a hard disk.

Again to avoid unnecessary typing, some features of the program are fairly crude. It ignores the file extension, for instance. The files have to be among the first 16 entries in the root directory. Also there is no error checking (other than what Basic will do automatically). If you use this program on a disk that does not contain the appropriate files, or isn't a DOS disk at all, then it will simply freeze. It is up to you to use it properly.

Obviously, you can omit all the REMs when entering the program. They are just included to remind you of the items just noted. There are no REMs in the program other than this.

Equally obviously, you will see that I could have reduced the program length a little bit more by using shorter variable names, but I felt this would make it more confusing and likely to lead to errors. There are one or two assumptions that might have been made about the DOS disk, but these would not have made the program significantly shorter.

In detail

Note that this procedure was designed for use on a Master 512 fitted with two floppy disk drives. If your system has a hard disk and only one floppy drive then you will need to do some things slightly differently. All of these are noted in what follows.

You can use Method 3 to create the system disks in this way:

         Download the Method 3 & 4 Package onto the PC and unpack the Zip file.
    Select ADFS on the BBC. With the AFORM utility format two floppy disks in ADFS Large format. Label one of these "DOS-Plus Boot Disk" and the other one "Temporary ADFS Disk". (If you have a hard disk on your BBC then you will only need one floppy, the one that is to be the DOS-Plus Boot Disk. Temporary files can all be saved on the hard disk.)

On the BBC computer type in this program and save it on the "Temporary ADFS Disk". (It is also in the package you have downloaded.) You can call it what you like, but I have called it DOS2BBC and I'll use this name in what follows.

You can omit all the REMs, of course, when typing in. Take note of the items above, in case your set-up is different from mine.

As it stands the program works on a Master and will copy two files from a 360kb DOS floppy disk in Drive B: and write them to a BBC disk in Drive :0.

    On the PC, format a 360kb (5¼") or 720kb (3½") disk, depending on the size of the compatible drives. (See below if there are problems with this formatting.)
    Copy the two files SHBOOT.PTI and WRPARTIM.BAS to this DOS disk you have just created.

Back on the BBC, place the Temporary ADFS Disk in the first floppy drive, and in the second floppy drive insert the DOS disk containing the two files SHBOOT.PTI and WRPARTIM.BAS. From here run the DOS2BBC Basic program. This will copy the two files onto the ADFS disk, stripping off the file extensions.

(If you have a hard disk and only one floppy drive, then put the DOS disk in the first floppy drive, and use the hard disk for your temporary files. Make sure you have edited DOS2BBC to read from the first drive.)

The program emits a "." for each cluster read, normally 1kb. (The SHBOOT.PTI file is nearly 200kb long, so the dots should continue for well over 4 lines.)

    Remove the DOS disk, and replace it with the (currently blank) disk labelled "DOS-Plus Boot Disk". Leave the temporary files where they are on Drive :0.
    If you have a hard disk on the BBC, then edit the WRPARTIM Basic program, now on the Temporary Disk. The second data item in line 100 must be the number of the floppy drive containing the disk that is to be the boot disk – ie 4 or 5, depending on which one you are using. If you have a twin-floppy-only system, then leave this value as 1. (The first data item is the file that is being written to it. There is no need to change this unless you are using a different drive than :0.)
    Run the Basic program WRPARTIM. It will write the file SHBOOT to become the first part of the DOS-Plus Boot Disk.
    Now put this Boot Disk in the first floppy drive. (It will need moving across if you have a twin-floppy system and have been following the above exactly. The temporary disk can now be forgotten about.)

Enable the 512 co-processor. (On a Master enter *CONFIGURE TUBE and press <Return>; just switch the co-processor on if it is an external one attached to a Model B or B+.)


Press <Ctrl-Break> to boot into DOS-Plus.

Once the machine has booted up you can look at the disk (with DIR) and you will see that, besides the system files and the command processor, it contains four other files: HDBOOT.SYS, HDISK.CMD, PCCE.COM and PKUNZIP.EXE. The first two of these are for hard disk users only (see next paragraph); PKUNZIP is the classic DOS program to unpack zipped file archives; PCCE is the "PC Compatibility Enhancer" which is necessary to allow this version of PKUNZIP (2.04g) to work on the Master 512.


If you have a hard disk, then enter:


and follow the instructions to create a bootable DOS hard disk partition. Once done, this will be Drive C:.


[This package is designed so that you can unpack the zipped files on the Master 512. If you prefer you could unpack them on the PC, then simply transfer the files across on DOS disks. This may require several transfers, especially if you are using 5¼" disks, but in that case you will not need to use PKUNZIP on the Master 512, and you will not need to use PCCE. Since these are not actually supplied with DOS-Plus, you could delete them before going any further if you do not require them.]

If you like to go ahead with unpacking the archives on the Master 512, then proceed as follows:




to launch the Compatibility Enhancer.

    On the PC copy the file M512_1D.ZIP to a DOS floppy disk. (You can use the same one as before if you like – you do not need the files on it any more.)

On the Master 512, use PKUNZIP to unpack the files in this archive to the DOS-Plus Boot Disk. (Note: PKUNZIP will unpack to the current directory. So select A: and enter:

pkunzip b:m512_1d

or whatever is appropriate if you have put the zipped file elsewhere. You may need to do some "shuffling" if you only have one floppy drive.)

The DOS-Plus Boot Disk is now complete.


Now enter:


to start the DOS-Plus disk management utility. Use this to format three disks in 800kb Acorn DOS format. (The program is menu-driven and very easy to use. The format you want is the second one in the list of formats.) These three disks will become System Disks 2, 3 and 4, so you might as well label them at this point.


The only remaining task is to unpack the other three principal archives onto these three disks. So:

       On the PC, copy M512_2.ZIP to a DOS floppy – you can continue to use the same one.
    If necessary, put PKUNZIP.EXE on this disk too. You can copy it on the Master 512 from the DOS-Plus Boot Disk you have created.

With this disk in Drive B: of the Master 512, and the blank 800kb disk that is to be System Disk 2 in Drive A:, at the A> prompt enter:

b:pkunzip b:m512_2 -d

noting the "-d" command tail, which must be in lower case and is necessary to make sure the directories are unpacked properly.

Alter the drive letters accordingly, of course, if the files are on different drives.

    Repeat the previous to unpack M512_3.ZIP to System Disk 3, and M512_4.ZIP to Disk 4. Note that if you need to reboot at any time during this process then you must run PCCE again before continuing or PKUNZIP will crash.
DOS-Plus Version 1.2a

The Method 3 & 4 Package also contains the files for the older version of the DOS-Plus Boot Disk, with DOS-Plus Version 1.2a. You probably do not need this, but you might like to have it for interest, and there are rumours that a few programs will run on the older system but not on the newer Version 2.1 (though I have never come across one).

If you wish to create this then use the DISK utility again, but this time to format a disk in 640kb Bootable DOS format, and answer "No" when asked whether you want to make it bootable! Unpack to this disk the system files, which are in the archive M512_XS.ZIP. (These must be the first files on the disk. After you have done so then you may like to mark them as system files using the FSET utility from the Vn. 2.1 disk.) Finally unpack the remaining files from the M512_XD.ZIP archive.

Extra Utilities

The programs PCCE and PKUNZIP have been included on the short boot disk to enable the above process to be carried out. These two programs are not on the original boot disk. Delete them if you want a disk with only the original files on it.

Formatting double-density disks on a PC

To transfer data and programs between the Master 512 and the PC on disks, you will normally use DOS disks that both machines can read. These will be the standard double-density (DD) formats used by the PC, namely 360kb for 5¼" disks or 720kb for 3½" disks. Such disks are used in the procedure described above, for instance.

The Master 512 cannot use high-density (HD) formats (1.44Mb for 3½" disks and 1.2Mb for 5¼"). Make sure that the disks you are using are DD disks, formatted with the appropriate DD capacity.

Note that you cannot reliably format HD disks in DD sizes. You must use actual DD disks. (They are not commonly on sale now, but there are still a lot of them around.)

Note also, by the way, that all disks you intend to use on both machines must be formatted on the PC. The Master 512's formatting program does not work properly for 360kb and 720kb formats. (It is fine for the Master's own dedicated formats, of course.)

The following points may also be worth noting:


If your PC is running Windows XP or later, then you cannot format a floppy disk in one of the double-density sizes from the usual Format dialogue in Windows Explorer or My Computer. (You are not given these options.) To format a disk select "Start | Run..." and enter:

format <drive> /t:40 /n:9

to format a 360kb disk in the given <drive> (A: or B:). To format a 720kb disk change the 40 to 80.

    Sometimes disks will not work properly if they are formatted on a PC after being used with an Acorn format such as ADFS on the BBC. (This is because parts of the BBC formatting can be left over, and these confuse the PC.) If this is a problem, then the solution is to reformat them on the BBC in DFS (both sides) before formatting them again on the PC. Single density (DFS) disks appear totally blank to the PC, and it will treat them as "virgin" disks.

Downloadable Resources

      Method 3 & 4 Package:   This contains all of the files you need for creating the Master 512 system disks by Method 3 (outlined above) or by Method 4.

About the 512 | System Disks | Software | Index