View Issue Details

IDProjectCategoryView StatusLast Update
0000014IDE Simulator[All Projects] Generalpublic2024-09-23 04:50
ReportercolinAssigned Tocolin 
PrioritynormalSeverityminorReproducibilityN/A
Status assignedResolutionopen 
Summary0000014: DOS utility to manage disk images
DescriptionA DOS utility is requested to control the IDE simulator from within a host PC.
TagsNo tags attached.

Activities

colin

2021-12-06 04:26

administrator   ~0000101

Here's a beta version of a utility to access the IDE simulator from a host PC running DOS. Written in Borland C++, it should work on anything 8086 and up.

Compatibility-wise it can use ASPI (but this requires a loaded driver, and some will reject standard vendor-specific commands like this uses). It can access the hardware directly, but this may cause issues with EMM386 if used simultaneously. There's a third "sneaky" mode but support for that is not ready on the IDE simulator firmware yet.

Settings (driver, device index) can be set via command line parameters or environment variables, and if run without a command, it will display a text-based UI. To see a list of commands, run "idesim /?".

idesim.zip (25,240 bytes)

SpocksBeer

2021-12-07 00:02

reporter   ~0000102

Awesome, will check it out

SpocksBeer

2021-12-07 00:22

reporter   ~0000103

Ok. Running idesim with no commands yields "no device found" in the GUI. Using /driver direct gets a blank GUI, like this:

https://imgur.com/7ZRdolv

Pressing F10 does seem to bring up the correct information about the device, however.

https://imgur.com/wbP8loT

colin

2021-12-07 06:18

administrator   ~0000104

Sorry about that - there was a tweak missing from the USB handling code misinterpreting a number. Attached is a fix.

idesim-2.zip (25,391 bytes)

SpocksBeer

2021-12-07 21:47

reporter   ~0000105

All good. :)

Tried the new version, and it gets a bit further. ASPI mode still gets no device found. Direct mode detects the USB key, but shows nothing on it.

https://imgur.com/6Pktn84

F10 info has a little more human readable stuff in this version.

https://imgur.com/vgSzftA

colin

2021-12-10 03:24

administrator   ~0000106

Ah, it looks like a minor bug in the path string generator. If you use the command line mode you'll see the files (e.g. 'idesim /driver direct dir usb0:/').

colin

2021-12-10 07:40

administrator   ~0000107

Attached is an updated build that should fix the UI side to correctly request the content.

idesim-3.zip (25,459 bytes)

SpocksBeer

2021-12-10 09:21

reporter   ~0000108

Thanks Colin, will test again when I'm in front of the ide sin on Monday

SpocksBeer

2021-12-20 03:53

reporter   ~0000109

So, not the Monday I meant, but the new version seems to work nicely now. Both GUI and commandline options (now that I've figured out the syntax) work cleanly - thank Colin!

flynnsbit

2021-12-20 21:18

reporter   ~0000110

Sweet! I missed this!

flynnsbit

2021-12-31 15:05

reporter   ~0000111

@colin, everything seems to be working well with the OAK driver on the DOS native mode. I have to use "direct" to communicate which seems to work perfectly fine. You noted needing an ASPI driver loaded to use that path. Can you give us an example setup? OS+Driver?

Is there a setup that works in Windows 98 + command prompt window that would function or is Windows 98 going to bomb it because of the protection modes?

colin

2022-01-05 08:25

administrator   ~0000112

I can't actually remember from the olden days if Windows 98-loaded ASPI drivers provide a real mode interface inside command prompt windows (it'd maybe need to be a VXD if it did) but if so, the ASPI driver might work once installed (the same sort of drivers you'd install to enable a CD burner).

For the 'direct' mode it might work under Windows 98, those versions of Windows did allow some I/O access (memory was protected, but not all I/O, to allow some backwards compatibility with older apps). It might protect the I/O used for IDE though, as it may control which I/O ports non-kernel processes can use.

At some point I intend to make Windows 3.1 and Windows 95 (and above) versions of the utility, just haven't started yet :)

colin

2022-01-05 08:27

administrator   ~0000113

And for actual DOS ASPI drivers there's a few floating around online (I found some looking for "DOS CD burning" solutions). I didn't actually get this path to work yet though - I was able to talk to the driver from my code, but the OAK Technologies one (same people as OAKCDROM.SYS) crashed, and there was another one (maybe Panasonic?) that rejected vendor commands, so i couldn't test it with that one.

juratastatura

2022-07-11 20:23

reporter   ~0000117

Hi there, is anyone else having problems changing ISO images with this tool? I can load the .iso for the first time, but when I try to load another .iso after that nothing is changed, dir command still shows content of the previous .iso, as if it has not been refreshed... If I want to load another image I have to reset PC. Also, not sure if it's related, but oakcdrom.sys doesn't recognize this device in my PC, so I am using videcdd.sys which works normal. Also, tried other cdrom drivers in combination with this tool, but still cannot change or load another image after the first one has been loaded... Everything else works great!

colin

2022-07-12 02:23

administrator   ~0000118

Hi, did you make sure to install the latest firmware (e.g. on https://issues.tattiebogle.net/dokuwiki/doku.php?id=mantis:ide_simulator:firmware ? ) There were some updates from the firmware that shipped in the units that definitely was intended to address both those issues (in particular, a flag was missing in older firmwares that meant DOS didn't notice the media change, so it didn't know to reload the disk and so kept relying on the cached version in RAM, and another to improve compatibility with all PCs that also made oakcdrom.sys work better/etc.)

juratastatura

2022-07-12 12:04

reporter   ~0000119

Downloading and flashing new firmware was the first thing I did. HOWEVER, after flashing I realized that device comes flashed with newer firmware version that is not available for download, so I configured device to use that original firmware which is now in bank B. I'll try to switch to downloaded firmware later and report my results here. Thanks.

juratastatura

2022-07-12 17:18

reporter   ~0000120

Sorry, I was stupid and flashing the wrong firmware, now everything works! Wow what a great product you have, I'm so happy. :D :D

skaft

2024-06-23 01:54

reporter   ~0000124

Sorry to necro this topic but I was wondering if the source code for this program is available somewhere? If not, is there some information on how to communicate with the device using the IDE bus? I'd like to make a native Windows 95/98 app for managing the images but I'm not really sure where to start.

Thanks.

colin

2024-06-25 03:52

administrator   ~0000125

Yes, I'd intended to make both a Windows (16-bit and 32-bit versions) tool and a document describing the protocol but I got sidetracked. I'll try and come up with the document for you within the next week or so!

colin

2024-09-23 04:50

administrator   ~0000126

Apologies for the delay, I've uploaded a document with the basic protocol used by the DOS utility to https://issues.tattiebogle.net/dokuwiki/doku.php?id=mantis:ide_simulator:protocol.

Issue History

Date Modified Username Field Change
2021-12-06 04:23 colin New Issue
2021-12-06 04:23 colin Status new => assigned
2021-12-06 04:23 colin Assigned To => colin
2021-12-06 04:26 colin File Added: idesim.zip
2021-12-06 04:26 colin Note Added: 0000101
2021-12-07 00:02 SpocksBeer Note Added: 0000102
2021-12-07 00:22 SpocksBeer Note Added: 0000103
2021-12-07 06:18 colin File Added: idesim-2.zip
2021-12-07 06:18 colin Note Added: 0000104
2021-12-07 21:47 SpocksBeer Note Added: 0000105
2021-12-10 03:24 colin Note Added: 0000106
2021-12-10 07:40 colin File Added: idesim-3.zip
2021-12-10 07:40 colin Note Added: 0000107
2021-12-10 09:21 SpocksBeer Note Added: 0000108
2021-12-20 03:53 SpocksBeer Note Added: 0000109
2021-12-20 21:18 flynnsbit Note Added: 0000110
2021-12-31 15:05 flynnsbit Note Added: 0000111
2022-01-05 08:25 colin Note Added: 0000112
2022-01-05 08:27 colin Note Added: 0000113
2022-07-11 20:23 juratastatura Note Added: 0000117
2022-07-12 02:23 colin Note Added: 0000118
2022-07-12 12:04 juratastatura Note Added: 0000119
2022-07-12 17:18 juratastatura Note Added: 0000120
2024-06-23 01:54 skaft Note Added: 0000124
2024-06-25 03:52 colin Note Added: 0000125
2024-09-23 04:50 colin Note Added: 0000126