开发者

Reverse engineering a ROM DOS device

开发者 https://www.devze.com 2023-02-02 11:39 出处:网络
I understand that my question is probably too abstract and tricky to be replied with an OneTrueAnswer©, but I hope I can express myself well enough to receive some kind of useful feedback.

I understand that my question is probably too abstract and tricky to be replied with an OneTrueAnswer©, but I hope I can express myself well enough to receive some kind of useful feedback.

It has come to my possession an interesting device which bears the following specs. (from http://www.motia.co.kr/product/product_03.asp):

  • 80386 Compatible Processor (Intel) 33MHz
  • SRAM 512KB
  • Flash Memory 4MB
  • ROM 512KB
  • Video 32KB
  • 320 x 200 pixels STN LCD with backlight, with touch panel
  • 3 RS-232 ports
  • ROM Dos 6.2 O.S.

Sure, it's not an iNexus-Pre, but it was free ;). Anyway, it's supposed to be embedded in track & tracing operations, mounted in a truck's console. Not to me, though. My goal is to bend this device to my own will, pairing it with an Arduino (or similar) to satisfy my lust towards DIY projects. Come on, the three serial ports and touch screen make my eyes glow.

And even though I come from a somewhat technical background, I must confess I don't know where to start with this thing. I can do as much as turning it on and accessing its shell from a serial terminal, meanwhile the display only shows: "System initializing. Please wait a moment...", and that's it.

Naturally, I tried to contact Motia to ask for a SDK of some sort, but I was promptly and elegantly dismissed.

So without further ado, I expose my questions:

  1. First and most important: Is it worth it? I'm willing to spend several we开发者_C百科ekends on the matter, but given my infinite stupidity I'm not aware of the difficulty of my quest. If so...

  2. ... where to start? I've never developed anything (significant at least) on DOS, specially with GUI. I hope I'm able to change that.

  3. What else can I provide you to help me accomplish my goal?

Every kind of feedback is endorsed.

Thanks in advance!


Is it worth it? I'm willing to spend several weekends on the matter

Absolutely not. This is going to be very painful, and you would learn far more by spending your time after buying a development board with documentation.

What else can I provide you to help me accomplish my goal?

If saving money is your goal, search on ebay for "development touch screen". Right now there is an STM32 module for $58.

Better yet, get a Chumby for $89 at http://www.adafruit.com (without the LCD).

If you really want to play around with a microprocessor and spend less than $5, get the TI development kit at http://www.yourwarrantyisvoid.com/2010/11/05/ti-launchpad-dev-kit-for-under-5/.


It's hard to say too much without more details, I am not familiar with this particular platform but I can try offer some generic advice.

Seems like some sort of embedded PC. The BIOS will boot (MS?) DOS from the flash drive. When DOS starts it first loads drivers via config.sys and then run autoexec.bat. What you probably have is some custom application on that flash drive that knows how to talk with the rest of the hardware (LCD etc.). Is the flash memory in a socket? One path would be to try and read out the flash and/or reprogram it. Have you opened up the case? Are there any other markings on the board and/or IC's - can you upload a photo?

If you want to use the LCD you will need to figure out how it is connected. If it is simply a PC compatible video adapter (which seems questionable because you're not seeing much on it) then it is fairly easy to program. If it isn't then without documentation it is going to be very difficult.

It seems that at the very least you'll need to reprogram the flash on the board after you figure out the file system on it. With no documentation and no tools(?) that will be pretty complicated. From a software perspective you should be able to find a lot of free tools for PC/MS-DOS development but getting to the point where you can deploy your software to this device and control its hardware sounds like more than a couple of weekends given that you have zero documentation. If you're very lucky once you open the case up you'll find some clearly marked port where you can connect a monitor and a PC keyboard and perhaps even a floppy drive - some embeddeded PC boards have those.


I've use an embedded ROM-DOS before.

It comes from General Software Corporation.

You can use a PC on COM1 as a terminal. Default behavior is serial console on COM1. Baud rate is somewhere fom 19200 to 115200 baud. Try 115200 first.

Send a break to reset the device, and a control-C to interrupt the autoexec.bat

I'm not joking.

It's probably an AMD ELAN processor; the specs look similar to a device I sued to work with I think I still have a eval board for one at home that we junked from work.

A quick google for embeeded DOS-ROM gets http://www.compulab.co.il/all-products/download/edos-man.pdf

You can program it using an old (dos) copy of Borland C or Turbo Pascal.

It has a hinky version in Iterserver not 100% compatible with the microsoft DOS one.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号