ParaDOS uses a locking technique to reset the drive definitions to their default values when the CPC 

gets reset. There is a slight possibility that some programs may confuse the locking system, but that 

should be rare.



The lock works by placing the bytes #53 and #44 at address #BAFA and #BAFB respectively (ie. 

"PD", short for ParaDOS). If these two bytes are intact, it is assumed that the bytes at addresses 

#BAFC and #BAFD respectively are also intact, and these are used as the master copy of the DDB 

and DPB (Drive Definition Byte and Drive Parameter Byte).



 The values that are actually used to determine the number or tracks, number of sides, default side 

and stepping mode are stored in the DDB at #BAFF. The byte at #BAFE determines the format 

preference for DATA, SYSTEM and IBM formats. These two bytes are copied from #BAFC and 

#BAFD on reset if the lock is intact. This allows a user-defined setting to be used, which will survive 

through resets as long as the lock survives (for example, type |DRIVE, and configure the drive 

settings. When you reset all the settings remain intact).



The actual values for the DDB are as follows:



Drive A:

---------

bit 7 - Head use when single-sided (Normally 0)

bit 6 - Single stepping (0) or double-stepping (1).

bit 5 - Number of tracks per side (0 = 40, 1 = 80)

bit 4 - Number of sides, single-sided (0) or double-sided (1).



Drive B:

---------

bit 3 - Head use when single-sided (Normally 0)

bit 2 - Single stepping (0) or double-stepping (1).

bit 1 - Number of tracks per side (0 = 40, 1 = 80)

bit 0 - Number of sides, single-sided (0) or double-sided (1).





The DPB bits are as follows:



Bit 3 - (0) Disable, (1)Enable Ultraform format rather than ROMDOS D10 (*Config says D1)

Bit 2 - (0) Disable, (1)Enable IBM format rather than ROMDOS D1 (*Config says D10).

Bit 1 - (0) Disable, (1)Enable extended DATA and SYSTEM formats (Electro Formats)

Bit 0 - Drive configuration (DDB) usage affected by formats. (0 = Unlocked, 1 = Locked)



The Format setup menu in ParaDOS has ROMDOS D10 and ROMDOS D1 switched in the menu.





So to make a temporary change to the drive definition, poke &baff or &bafe with the new value. To 

make a semi-permanent change, poke &bafd or &bafc and the corresponding byte at &baff or 

&bafe. To make a permanent change, change to ROM at address #1c00 (DDB) or #1c03 (DPB).



The correct default values for 40 track, single-sided drive B should be 0 and 0.



I personally use DDB=#03 (80 track, double-sided drive B) and DPB=#02 (Electro formats 

enabled).



To allow 80 track, double-sided discs to be used in Drive B: use DDB=#03. Disabling Electro 

formats allows 40 track, single-sided DATA and SYSTEM format discs to be used in drive B:

