windows-nt/Source/XPSP1/NT/multimedia/media/mcicda/convnote.txt

48 lines
1.6 KiB
Plaintext
Raw Normal View History

2020-09-26 03:20:57 -05:00
Notes on conversion from win3.1 to NT.
======================================
1. Change from MSCDEX to NT CDRom driver IOCTLs.
-- Driver sharing capabilities (??) - does the driver allow anything ?
-- Drive labelling (config stuff too).
Problems :
Apparently no SCSI-2 command to tell if the tray is open.
For now the only conditions we detect are the PLAY_STATUS conditions
and inability to read the TOC. We only read the TOC when asked to
by CdReady or CdGetNumTracks.
2. Device sharing implications ??
Seems at the moment that ANYONE can open CDRom (is it exclusive ?).
The MCICDA on windows allows sharing between apps. This means we
need a server implementation or a kernel driver or just proper
sharing access in the kernel driver (what should be access required
for playing CDs ?).
3. Beware track numbering problems - is there always a 1 ?
4. PAUSE-RESUME. This is effectively NOOPED (or at least the RESUME is).
So PAUSE always stops.
Underneath in MSCDEX the thing they're fighting is that PAUSE while
PAUSEd STOPs (ie forgets its PAUSED). Also MSCDEX calls PAUSE
STOP.
In NT to STOP we ... ?
5. A BASIC problem with the way all this stuff is written is that
it's written by people all the way over to CDEX land.
The devices report status AFTER they've tried to do what you want.
This helps greatly with integrity. The code is written with all
kinds of defensive test BEFORE issuing a command which is pretty
bogus.
6. flip3, flip4 etc. Change these to portable versions where necessary.
(flip4 seems OK and fits in with other poor implementations).