![]() The order of the addresses is important, since one is the input and one is the output (I don't know what the third is used for but probably for testing the port). Other files in that folder include the use of the DOSBox-X debugger, a sample dump of the code executed by the CPU, and the online hex editor I used to change the port addresses. ![]() ![]() Photo - please note that pins 12 and 13 of the D25 are NOT used - it looks like they are connected but those are pins 24 and 25 underneath This inverts the signal for input bit 7 - and it works correctly, because the parallel port has an internal pull-up. The right leg of the transistor (emitter) goes to Pin 25 of the DB25 plug (ground, as used above) The left leg of the transistor (collector) goes to Pin 11 of the DB25 plug Pin 20 - goes to a 4.7kOhm resistor, then to the middle leg of a BC547 NPN transistor. Pin 19 - Ground - Pin 25 of the DB25 (as before) Pin 18 from Interface A goes to Pin 10 of the DB25 plug The parallel port cable I use is the same as Tom's ( ) except for a small change to the inputs: This is the Turtle page included with the original TC-LOGO: TCLOGO_S (outputs to port 3F8, COM1, not tested yet). printer port LPT1 in most configurations). You can download the modified TCLOGO_P.COM (outputs to port 378 and inputs from 379 i.e. Tomorrow I shall test this properly with actual Logo code for my ‘Dacta arm’. I had trouble with the Compaq using a later Interface A (with flat-top LEDs) which worked fine on the newer Toshiba. It may be necessary to add another 5V power supply into the cable for some combinations of equipment. There are two other small catches to be aware of - Thinkpads are usually configured with LPT1 not at 378h but at some other similar address (that will be easy to adjust), and there is a slightly more serious problem that some laptop parallel ports may not supply enough current to turn on all the interface outputs together. That will open this to a wider audience of tinkerers.Īs it stands, hopefully most people with an Interface A also have access to a parallel-port and DOS-capable PC, now that it doesn’t need to have an ISA slot and a special card made up. The story is not over, as I’d love to see a USB-compatible serial solution running from DOSBox-X. With even more patience, I’m sure this could have been achieved with old equipment, as debuggers and hex editors are nothing new. I find Python can miss inputs even at 10Hz… needs to be interrupt-driven.Īnd yes, I carried out the debugging/disassembly with DOSBox-X on a modern i7/Windows 10 PC, just for the convenience of downloading/installing, generating a 250MB dump of CPU instructions, etc. It might look antiquated with the CGA display (and it is), but even by modern standards, this software is pretty fast - much faster than Python on a RaspberryPi can control its outputs, for example, just because of all the intervening layers in the modern OS environment (Raspbian Linux). This is the advantage of a tight assembly language loop (about ten CPU instructions between writes that CPU is running at 33MHz so it’s hardly stressed…), an OS with few other overheads, and an output port that is latched without other translations or processes. I will check it with my oscilloscope tomorrow. The LEGO software generates the PWM! It turns the parallel port outputs on and off fast enough for the motor to be effectively slowed without terrible loss of torque or horrid whining - so the PWM frequency must be several thousand Hz at least. Hence we use Status pins for input port 379h). (For technical interest, the bidirectional capability of EPP/ECP requires data to be clocked through - and that is not practical to achieve with the LEGO software. ![]() All these machines have LPT1 ports, the newer ones are EPP/ECP but it doesn’t matter for this purpose. However, I have also tested it on my Toshiba laptop from around 2000 (running Windows 98) and my 2004 Dell Optiplex GX280 Windows XP desktop PC booted to DOS via a USB drive. Yes, I am using one of my vintage (1994) laptops for this, a Compaq Contura Aero 4/33c (486SX33, passive-matrix colour 640x480 7.8” display - it’s a little one!) I have three of these. Running native DOS (after exiting from Windows 3.1) and running on a 28-yr-old battery, too (for 2hrs+) Thank you for sharing in the enthusiasm, I really appreciate it :) CONGRATULATIONS!!! This is so cool - I shall try all this early next week!!! Oh man, what a blast.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |