Changes

Jump to: navigation, search

HDCPM

1,121 bytes added, 20:27, 14 August 2023
HDCPM is a Hard Disk boot loader for [[CP/M]] plus Plus, developed by d_kef<br />
You can read more about the development of the application here:<br />
HDCPM is compatible and can be used together with the [[Dobbertin Harddisc]].<br />
HDCPM has been developed with [[WinApe]] Z80 Assembler and was tested with [[WinApe]], [[CPCemu]], an Amstrad Plus 464 upgraded to 6128 and an Amstrad CPC 6128and an Amstrad CPC 464 with [https://www.cpcwiki.eu/index.php/Universal_512K_and_1MByte_RAM_Expansions Universal 512K RAM Expansion].<br />
Although every effort has been made to ensure that HDCPM works properly, there is a chance of hard disk data corruption in case of a stray bug in the code. So make a backup of your hard disk before installing and trying out the ROM. I'll not be held responsible for any data loss or damage to your hard disk.<br />
** [[SYMBiFACE II]]
** [[X-Mass]]
** [https://github.com/salafek/cyboard-for-cpc Cyboard]
** [[uIDE 16]] (base address = &FEF0)
** [[M4 Board]]
** [https://www.cpcwiki.eu/forum/amstrad-cpc-hardware/usifac-iimake-your-pc-or-usb-stick-an-hdd-for-amstrad-access-dsk-and-many-more!/ USIfAC II]
** [http://www.tmtlogic.com/ Symbiface III]
** [https://www.cpcwiki.eu/index.php/Albireo [Albireo]] (SD card only)
* Compatible storage device with enough free space to accommodate the desirable CP/M hard disk configuration.
* Floppy disk drive for initialization of the file system.
* Read the .EMS file from the reserved track and store it in RAM just as the normal CP/M Plus boot loader does.
* Move the top of TPA and transfer the hard disk driver, RTC driver (in case of |HDCPMT) and initialize the XDPH, DPB, ALV of the mounted hard disks to the memory area just below the normal BDOS base address. The newly inserted code will be handled by CP/M as if it was a normal RSX.
* Patch the floppy disk drive routines in case a FDC's not been found.
* Patch the SCB in order to change the startup/default drive.
* Patch the drive table records to reassign drive letters for floppy drives 1 and 2, hard disks 1,2,3,4 (if any) and ram drive if [[Dk'tronics memory expansion]] or [[Dobbertin Memory Expansion]] driver is present.
* Move the ALV of the Dk'tronics RAM disk if [[Z-System]] is has been detected.
* Patch the CP/M console with the desired colour scheme.
* Patch the system message.
===Using the ROM===
* Install the HDCPM ROM in a free ROM slot of your ROM box.
* Plug in your [[SYMBiFACE II]] compatible IDE interface, [[uIDE 16]], [[M4 Board]] or , [https://www.cpcwiki.eu/forum/amstrad-cpc-hardware/usifac-iimake-your-pc-or-usb-stick-an-hdd-for-amstrad-access-dsk-and-many-more!/ USIfAC II] or [[Albireo]] and attach the proper mass storage device.
* Power on your Amstrad. You should see the ROM initialization message: ''CP/M+ Hard Disk boot loader v1.04 (S2)''. The type of interface found will be shown inside the parentheses:<br />
** (S2): [[SYMBiFACE II]] compatible interface
** (US): [https://www.cpcwiki.eu/forum/amstrad-cpc-hardware/usifac-iimake-your-pc-or-usb-stick-an-hdd-for-amstrad-access-dsk-and-many-more!/ USIfAC II]
** (S3): [http://www.tmtlogic.com/ Symbiface III]
** (AL): [https://www.cpcwiki.eu/index.php/Albireo [Albireo]]<br />
{|
|-
===Using the binary===
* Plug in your [[SYMBiFACE II]] compatible IDE interface, [[uIDE 16]], [[M4 Board]] or , [https://www.cpcwiki.eu/forum/amstrad-cpc-hardware/usifac-iimake-your-pc-or-usb-stick-an-hdd-for-amstrad-access-dsk-and-many-more!/ USIfAC II] or [[Albireo]] and attach the proper mass storage device.
* Use your original CP/M Plus system disk set to Boot CP/M Plus.
* Use the provided HDMGR.COM utility in order to format the disk image or partition and transfer the .EMS file to the reserved track. Change the start-up drive letter to that of your first CP/M hard disk.
You can use this utility to get information about your hard disk geometry, disk image files, partitions and boot sector. You have to use this utility to format a hard disk, disk image file or partition to CP/M format or manipulate the boot sector of the hard disk and/or transfer an .EMS system file to the reserved track of the hard disk.<br />
The boot sector contains information about the CP/M disk drive letters, start-up drive and console colour scheme. All those properties can be changed with HDMGR.COM.<br />
HDMGR will perform a fragmentation test of the discovered CP/M hard disk image files uppon execution(not for Albireo).<br />
You can't use this utility to re-partition your hard disk or make a new CP/M image file or manipulate a file system other than CP/M.<br />
The HDMGR.COM utility is self explanatory. Just run it from the CP/M command prompt.<br />
==Error messages==
===ROM checksum error===
* ''*** HDCPM ROM checksum error ***
The ROM has failed the checksum test.
The contents are probably corrupted. The ROM will not be initialized.
 
===Hard disk errors===
* ''*** No mass storage found ***''
* ''ERROR: DISK I/O''
I/O error occurred during the last read/write operation.
Your hard disk might be defect or the USB disk is not enabled.
HDCPM.DOC: various additions and corrections.<br />
|| [[Media:hdcpm106.dsk|hdcpm106.dsk]]
|-
| v1.10 ??? 2023 || HDCPM.ROM, HDCPM.BIN: added support for CPC464 with #C3 mode compatible RAM expansion card.<br />
HDCPM.ROM, HDCPM.BIN: can now boot CP/M Plus on a CPC that has no or faulty Floppy Disc Controller present.<br />
HDCPM.ROM: ROM checksum test and new error message added.<br />
HDCPM.ROM, HDCPM.BIN, HDMGR.COM: code optimization.<br />
HDCPM.ROM, HDCPM.BIN: (bug fix) incorrect patching would corrupt the Dobbertin RAM drive on CP/M Plus v1.1<br />
HDCPM.ROM: (bug fix) |HDDPB was displaying wrong values<br />
HDMGR.COM: (bug fix) a corruption of the MBR of USB/SD card occured in some rare cases.<br />
HDCPM.DOC: various additions and corrections.<br />
|| [[Media:hdcpm110.dsk|hdcpm110.dsk]]
|}
181
edits