Some kind peeps ( Alley & Si ) have already converted Lems,Pop & Oh No more
lems to Sim/WinCoupe format :)

http://www2.50megs.com/mrwhitey

is where you'll find them

C


-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Behalf Of Doore, Dan
Sent: 19 May 2000 10:25
To: '[email protected]'
Subject: RE: SDF format files


>  I think I've got a SDF description (C structure) somewhere.

I have this now - it's fairly tiny so I'll post it here:

Is this a format that Si Owen has made for WinCoupe?, if so it's capable (as
far as I can see) of making images of  "protected" discs.

Lemmings on WinCoupe anyone :-)

Dan.

Work: [EMAIL PROTECTED]
Shirk: [EMAIL PROTECTED]
VVeb: http://www.podboy.demon.co.uk/

***
SDF Disc Structure

typedef struct
{
    char    szSignature[3];         // SDF image signature ('S' 'D' 'F')
    BYTE    bRevision;              // Compatability number, increme

    BYTE    bTracks;                // Tracks per side (usually 80)
    BYTE    bSides;                 // Sides (usually 2)

    BYTE    abReserved[12];     // Reserved for future expansion
}
SDF_HEADER;

// Track header on each track in the SDF disk image
typedef struct
{
    BYTE    bSectors;          // Number of sectors on this track

    SECTOR_HEADER asHeader[]; // First of the sector headers for this track
(usually more following it)
}
TRACK_HEADER;

// Sector header on each sector in the SDF disk image
typedef struct
{
    BYTE    bIdStatus;       // Status error bits for after READ_ADDRESS
command
    BYTE    bDataStatus;     // Status error bits for after READ_xSECTOR
commands

    IDFIELD sIdField;        // ID field detailing sector

    BYTE    abData[];       // Start of sector data (only if bIdStatus is
zero)
}

SECTOR_HEADER;
// ID field information describing the sector header and information
typedef struct
{
    BYTE    bTrack;     // Track number
    BYTE    bSide;      // Side number (0 or 1)
    BYTE    bSector;    // Sector number
    BYTE    bSize;      // (128 << bSize) = sector size in bytes: 0=128K,
1=256K, 2=512K, 3=1024K

    BYTE    bCRC1;      // ID field CRC byte 1
    BYTE    bCRC2;      // ID field CRC byte 2
}
IDFIELD;


Reply via email to