Amiga DiskMasher compressed archive
application/octet-stream
Magic Bytes
Offset: 10
23 20 54 68 69 73 20 69 73 20 61 20 73 68 65 6C 6C 20 61 72 63 68 69 76 65
The Amiga DiskMasher System (DMS) is a legacy disk imaging and compression format originally developed by Simple Design Solutions for the Commodore Amiga computing platform. It was primarily utilized to compress entire floppy disks into single files for efficient storage and distribution across early telecommunications networks like bulletin board systems. While now obsolete, the format remains a standard in the retro-computing community for software preservation and loading disk images into modern system emulators.
Validation Code
How to validate .dms files in Python
Python
def is_dms(file_path: str) -> bool:
"""
Check if file is a valid DMS by magic bytes.
Signature offset: 10 bytes
"""
signature = bytes([0x23, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x73, 0x68, 0x65, 0x6C, 0x6C, 0x20, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65])
with open(file_path, "rb") as f:
f.seek(10)
return f.read(25) == signature
How to validate .dms files in Node.js
Node.js
function isDMS(buffer: Buffer): boolean {
// Signature offset: 10 bytes
const signature = Buffer.from([0x23, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x73, 0x68, 0x65, 0x6C, 0x6C, 0x20, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65]);
if (buffer.length < 35) return false;
return buffer.subarray(10, 35).equals(signature);
}
Go
func IsDMS(data []byte) bool {
// Signature offset: 10 bytes
signature := []byte{0x23, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x73, 0x68, 0x65, 0x6C, 0x6C, 0x20, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65}
if len(data) < 35 {
return false
}
return bytes.Equal(data[10:35], signature)
}
API Endpoint
GET
/api/v1/dms
curl https://filesignature.org/api/v1/dms