User Tools

Site Tools


blog:pushbx:2022:1111_lcdebug_image_for_use_with_pcjs.org

lCDebug image for use with pcjs.org

It isn't the latest and greatest, but in August I uploaded an lCDebug diskette image to our server with the prerequisite .htaccess file to allow pcjs.org to access it. The file is at https://pushbx.org/ecm/test/20220819/bcdebug.img

To allow pcjs.org to load from our server, a cross-site load needs to be enabled. This is the required .htaccess file's contents (in the same directory):

Header add Access-Control-Allow-Origin "*"
Header add Access-Control-Allow-Methods: "GET"

As an example:

  1. Input Enter twice to skip the date and time prompts
  2. In the first dropdown, select drive "B:"
  3. In the second dropdown scroll all the way down to "Remote Disk"
  4. Next to the second dropdown press the "Load" button
  5. A popup reading "Enter the URL of a remote disk image." displays
  6. Press "OK"
  7. Switch the shell to drive B: by inputting the command B:
  8. Try a dir command to display the diskette contents
  9. Enter lcdebug command
  10. Have fun!

It can be booted as well

However, the COMPAQ machine that I used for the first example doesn't work with this particular image's lDOS boot sector loader, because its function 13.08 reports 000Fh (15) for the CHS geometry sectors (stored in word [ss:7C18h]), even though the diskette actually needs 0012h (18) to properly load from it. The only fix for this on our part would be to build lDOS boot.asm without querying for geometry. (However, both iniload (unless built with -D_QUERY_GEOMETRY=0) and lDebug itself also will query for the geometry.) The ROM-BIOS should provide a way to configure this, though if this machine does allow this I do not know how to do it.

To boot it on a machine expecting 1440 KiB 90mm diskettes, do this:

  1. Insert the image for drive A: (as above)
  2. Press the "Ctrl-Alt-Del" button
  3. Wait for it to load
  4. The included Script for lDebug (.sld) file will make lCDebug try to connect to serial I/O on the COM2 port. Wait fifteen seconds for it to give up.
  5. Have fun!

Discussion

C. MaslochC. Masloch, 2022-11-11 21:17:58 +0100 Nov Fri, 2022-11-11 21:19:05 +0100 Nov Fri

Actually, serial I/O can be made to work within booted or application lCDebug in pcjs.org as well. Open the PCjs Debugger; it will listen on the COM1 serial port. Enter the following commands to lDebug to use that port:

r dspvi 0C
r dspvm 2#1_0000
r dspvp 3F8
r dco dco or 4000

The KEEP prompt appears in the PCjs Debugger terminal window. Focus this window and input "KEEP" followed by Enter. Now you're controlling lDebug via serial I/O. (The PCjs Debugger window doesn't seem to support Carriage Return to reset the current line cursor position though.)

C. MaslochC. Masloch, 2022-11-11 21:23:32 +0100 Nov Fri

CR problem reported at https://github.com/jeffpar/pcjs/issues/56

You could leave a comment if you were logged in.
blog/pushbx/2022/1111_lcdebug_image_for_use_with_pcjs.org.txt · Last modified: 2022-11-11 20:44:15 +0100 Nov Fri by ecm