Hardware:
Software:
I find the MD database very convenient. Whenever I record an MD now, I type in the title and contents into the database while I am recording. I can do this leaning back on my couch without having to point the HPLX to the MD recorder. Then when recording is finished I "upload" the entire contents to the MD recorder. The labeling takes a bit of time (about 5 mins) partly because the program is implemented in an interpretive language, but mainly because the MD recorder won't accept IR codes at a tremendous speed anyway. The database allows me to keep track of what I have recorded. I can browse through my MD collection doing title searches etc, wherever I am (for example in a CD rental place).
I will explain how to do 1, 2 and 3 based on my SONY JA3ES recorder. I think with minor changes most MD recorders can be served. I will try to explain which parts are JA3ES specific and may need to be changed.
Make an RC program which looks something like this (You are welcome to use mine, but be prepared to rerecord the IR sequences, because I changed the chrystal in my HP200LX):
define main key 0x1b exit ; ESC key, terminates RC key '_ call pause key 'a call a key 'b call b key 'c call c key 'd call d key 'e call e ... key 'A call A key 'B call B key 'C call C key 'D call D key 'E call E ... end define a send "xxxxxxxxxxxx" ;- code for generic 'a' end define b send "xxxxxxxxxxxx" ;- code for generic 'b' end define A call shift call pause call a call pause call shift end define B call shift call pause call b call pause call shift end ... define shift send "xxxxxxxxxxxx" ;- code to switch between upper and lower end case mode define pause send "xxxxxxxxxxxx" ;- bogus codes to cause delay send "xxxxxxxxxxxx" send "xxxxxxxxxxxx" cls cls cls ; Clear the screen a few times cls ; to cause further delay cls end
Whereever there is "xxxxxx" above, you have to substitute the IR codes you recorded from your remote. The ones in the pause subroutine are bogus ones to cause a delay. I used the codes for the Yamaha CD player that are included in the RC package. They have no effect on my SONY recorder. It would be much nicer if there was a command to tell RC to pause for a certain number of milliseconds. But since this doesn't exist, we have to do it the hacky way.
Now when we press 'a' we get an 'a' and when we press 'A' we get an 'A'. (Assuming that the MD recorder is in lower-case mode to start with.)
Note that the above is not necessary for MD recorders that accept separate IR codes for upper and lower case letters. This is, for example, the case for all SONY MD decks that accept the RMD10P remote labeller.
------ mdlbl.lxb ------------- openread 1 c:\md.txt ; md.txt contains the data to be sent ; we open it for reading :mainloop read 1 *string ; read one line checkeof 1 if errorlevel 1 goto close gosub sendstring ; and send it to the MD recorder goto mainloop :sendstring stuffkey 0 13 ; 13 is the [ENTER] key which is bound ; to the "Name-in" function stuffkey 0 95 ; This is "_" key, which calls PAUSE stuffkey 0 9 ; TAB key, calls SHIFT to put MD ; recorder into lower-case mode stuffkey 0 95 ; another pause set *i 1 strlen *len @string@ :loop ; loop through all characters of string if @i@ > @len@ goto endloop strmid *c @i@ 1 @string@ ; get i'th character stuffstring "@c@" ; stuff it into the KB buffer as well stuffkey 0 27 ; ESC key, causes RC to terminate and ; give control back to LXBatch c:\bin\rc c:\ja3es.rc ; call RC and process all the keys in ; the keyboard buffer so far CheckKey ; keyboard buffer should be empty now. if errorlevel 1 goto abort ; if not, user has pressed a key, abort calc *i @i@ + 1 goto loop :endloop ; finish off the line stuffkey 0 13 ; send "Name-in" again to put Recorder ; into stand-by mode stuffkey 0 95 ; pause stuffkey 80 0 ; This is the down-arrow key which is ; bound to "Next Track" ( >> ) ; This will advance us to the first ; track, if we were labeling the title ; of the MD or any successive track stuffkey 0 27 ; ESC, terminate RC c:\bin\rc c:\ja3es.rc ; process keyboard buffer return :abort getkey *c :close close 1 end ---------------END mdlbl.lxb -------------------
Here is a database template that you can use to get started. It includes several SmartClips. The one I use most often is called "with artist" and copies the following information onto the clipboard:
[artist]: [title] [track 1] [track 2] etc
You can change these or define your own as you like. Remember, the first line will become the title of the MD, each successive one the title of a track. Selecting a SmartClip will put the information onto the clipboard, but the LXBatch program needs it inside a textfile. To save the clipboard as a textfile I use the following keyboard macro:
{Enter}{Memo}{Paste}{F10}c:\md.txt{Enter}{Enter}{Menu}qwhich I put on Fn-F1 (Function F1).
So what do I do when I want to label an MD? First, I select the apropriate entry in the MD Database and press F5 (Clip). This will display a choice of SmartClips. I select the one I want (e.g. "with artist") and press Fn-F1. This will copy the data onto the clipboard in the format specified by the Clip, then call Memo, paste the info, save it under the name c:\md.txt and quit Memo. Now the data sits in MD.txt ready to be sent to the MD recorder by the LXBatch program described above.
If you have any comments about this method, or if you know a more elegant approach (especially a better way to control timing in RC), please, let me know. I have also started an archive of LXBatch and RC control files . If you have any interesting ones, please contribute them.