CompuServe Thread

#Reading CD-ROMS w/Pascal

4 messages in this thread
#34666From: Jim MarchDec 22, 1992 11:38 AM
Where can one find information on how to read CD-ROM's with C and/or Pascal programs? We are writing the specs for an educational CD-ROM program and I need to know how much work is involved. I would prefer Pascal, but if somebody already has a good C library… Thanks in advance Jim from Penngrove
#34672From: Albert DayesDec 22, 1992 12:43 PM
If you want a good overview with C. Try Dr. Dobbs Journal DEC 1992 issue source code can be downloaded from their forum (GO DDJFORUM). What machine are you using? If you are a PC using Microsoft Extensions MSCDEX should help with the development time. How much direct access do you need? If you are working with files then once a CD-ROM is mounted (on a MAC or UNIX) or you have a drive letter on a PC. You can access the files on the CD-ROM just as you would a normal device like a hard disk. So you really don't have to know too much on how it works at the lower level since the operating system handles all the dirty work.
#34805From: Jim MarchDec 23, 1992 10:38 PM
Thanks for your ideas on reading CD-ROM's. I didn't know they were so easy to access! The DAK CD-ROM I just got is defined as drive S:. You're right, I can read the files like any other hard disk file. As of yet, I don't know why but the drive is defined as a "network" drive (the CD-ROM is attached through a SCSI port so maybe all SCSI devices are networked devices?). Again, I don't know why, but Norton Utilities (DISKEDIT) doesn't let me do as much with a networked drive. Any body know how the drive was declared a network device? Also, the drive does use MSCDEX and a device driver called FDCD.SYS. It's all new to me but I love seeing 600meg files on my S: drive! Thanks again Jim from Penngrove
#34837From: Albert DayesDec 24, 1992 11:10 AM
Jim, DiskEdit shouldn't work since I assume it is assuming the blocks are 512 bytes rather than 2048 bytes per sector. CD-ROMs are usually 98% of the time 2048 byte blocks. Basically the MSCDEX should just give it a letter. I doesn't mean it is a networked drive … for example ram disks aren't networked. Also in the case of Novell Networks they have a completely different filesystem and intercept all the disk calls and handle them appropriately. Another word about Norton … ISO-9660 is SIMILAR to MS-DOS in many respects but it has many parts that are different enough to cause problems. ISO-9660 doesn't have a fat like MS-DOS. The boot sector usually is sector 16 (logical) rather than 0 as under DOS. Directory entries give absolute sector locations on the ISO-9660 while MS-DOS give offsets into the FAT.