CDRAM version 0.6 Diapason, March 1995 This archive should carry the following files: CDRAM.COM TSR: 3228 bytes CDRAM.DOC This file: 8536 bytes FILE_ID.DIZ REQUIRED: - 386 or better CPU - MSCDEX version 2.1 or better INTRODUCTION CDRAM is a resident cdplayer with common functions like play/pause, next, previous. Its particularity is that it's not memory hungry: CDRAM only uses 1488 bytes of RAM. CDRAM is Freeware. As a reward, you can send me your comments or eventually a bug report. USAGE CDRAM [/? /i /r] /? Show intructions /i Show usefull information given by MSCDEX And all the CD tracks (if one is present in the drive) /r Remove CDRAM from memory Commands: ALT-1: Previous ALT-2: Rewind ALT-3: Play/pause ALT-4: Fast Forward ALT-5: Next/Jump* * Short note on Jump: Suppose that track 1 is actually playing and you want to listen to track 8. All you have to do is to type '8' on the keyboard then ALT-5 (Important: a CD MUST be playing). CDRAM calculates the track number according to the last key typed on the keyboard. So, this means that this command is limited to tracks 1-9; but there is a simple way to reach tracks beyond 9. For more informations, please report to the NOTES section below. NOTES - CDRAM also plays data CDROM with one or more audio tracks; it will automatically jumps the first one. - If you change the compact disk, you have to press play 2 times (sometimes). - Hotkeys are actually working only in programs who are waiting for a keypress (like DOS, Telemate or WP). - You can load CDRAM high easily. * Fast Forward and Rewind do 10 seconds jumps. * This version includes a new method for memory installation and uses vector 81h for the install-check. This could cause problems if other programs use or kill the vector. If this ever happen, CDRAM may refuse to run, to install or to uninstall itself. Please contact me and I will add a parameter so you can change (or ignore) the vector number to your needs. * If CDRAM tells you that it can't be removed from memory without compromising another TSR, it means that this TSR uses the same vector as CDRAM does (16h) and it was loaded after CDRAM. The best way to handle this is to put CDRAM at the end of your AUTOEXEC.BAT file, otherwise CDRAM will be deactivated and won't respond to ALT-x requests anymore. To reactivate, type CDRAM again. * Second note on the Jump instruction. When you press ALT-5 (Next track), I check the last key pressed instead of executing its normal function. Then I convert it in Hex format by substracting 48 (char 0 in ASCII). If the result corresponds to a track of the disk in the drive, CDRAM jumps to this track. So, to go directly to track 17, you can type 'A' (65 - 48 = 17). Pretty simple eh? All you have to do is to learn the ASCII table! I will give you the codes for tracks 10 to 20: Track ASCII Code Corresponding ASCII character 10 58 : 11 59 ; 12 60 < 13 61 = 14 62 > 15 63 ? 16 64 @ 17 65 A 18 66 B 19 67 C 20 68 D etc... NOTES OF THE AUTHOR This software brings nothing new. I firstly did CDRAM for my own use. My problem was the following: I needed a TSR player, especially usefull with those never-ending downloads; you don't really have access to your hard disk meanwhile. I searched through several BBS and on Internet, but all I found was dissapointing. All the TSR were taking above 10k of RAM and I didn't need very sophisticated functions. With The PC Bible in one hand and a MSCDEX document I found on Internet in the other, I started coding. This was not very simple because all the code is written in Assembly language, the Microsoft document is pure crap and you can't tell the CDROM drive to "play tracks 1 to N". In fact, you have to handle 32 bits Red book and HSG addressing ( this is the way to count the sectors on a CD ) and this is why I've decided to use the extended 32 bits registers of the 386 processor ( am I lazy or what! ). Everybody got one, right? Oh, before I forget, maybe you realized that english is not my native language. I tried to translate the french document the best way I could. I'm sorry if I made mistakes, and if so don't be shy to tell me! IN THE FUTURE: - Better keyboard handling - VGA animation on start-up - RANDOM function (probably memory hungry) - Auto-bug-detection (?!?!?) TO CONTACT ME: Christian Michaud 853 John-West Ste-Foy, Qu‚bec CANADA G1V 3C9 Tel: 1-418-657-2135 Internet: michaudc@ift.ulaval.ca BBS: Nouvelle FrontiŠre (418-658-6769) TESTED ON: 486DX-33, Sony CDU31A drive, Mscdex 2.23 486DX2-66, double speed Panasonic drive, Mscdex 2.22 Pentium 90, Panasonic drive, Mscdex 2.23 386DX-33, Mitsumi drive, Mscdex 2.23 486DX-50 EISA, external Sony SCSI drive, Mscdex 2.20 386DX-33, Panasonic drive, Mscdex 2.23 HISTORY Version Comments ------- -------- - 0.6 * You now have to type CDRAM /r to remove CDRAM from March 95 memory. * You can display tracks with cdram /i. - A big part of the code has been re-written to remove some bugs. For example, one stupid bug that uses to hang your computer (sometimes) when parameters were found on the command line... - You will now have 48 bytes more free memory! Yep, CDRAM drops to 1488 bytes. - 0.5 * At last, parameters on command line: no more useless text Feb. 95 on the screen * Hotkeys have slightly changed places to let space for Fast Forward and Rewind * First english version - Better merory management (I think!) - CDRAM should now refuse to run on 8088 and 286 computers instead of stupidly hanging the machine like in previous versions. The problem is that I don't know if it works! Maybe you can try that for me if you can get that old XT out of the attic? Please send me a message! - CDRAM now takes 1536 bytes of memory. - 0.4 - No more infinate loop if your drive supports interlacing Jan. 95 - Minor bug in Jump command corrected - 0.3b - First "secure" version. In fact, I did not receive a lot Dec. 94 of echos from those who tried it, so I suppose nothing went wrong. Well, I hope so! * Jump instruction added -> CDRAM now takes 1344 bytes - Beta - Computer don't hang anymore if MSCDEX is not detected. Dec. 94 * Stop is replaced by Pause. - Elimination of redundant code, back down to 1312 bytes. - Alpha First version. Uploaded on some BBS. Only one people seems Nov. 94 interested. Uses 1440 of RAM. GREETINGS (in random order) Sediment, but, plane, Per-Ivar Knutsen, The Henker, Numide, Pintoman, Coach, Micheline Lesage, Rico, Martin Bouchard, Proxima, Michel Delisle, Frank, all GUSsers, all Internet Freaks, all coders around the world.