Image Map Image Map
Page 1 of 3 123 LastLast
Results 1 to 10 of 22

Thread: Whats the bare minimun to boot DOS?

  1. #1

    Default Whats the bare minimun to boot DOS?

    Hi,

    I need to develop a system that will be able to boot DOS with the absolute minimum.
    Since I haven't been able to find a project like this I'll have to develop both the firmware and the board.
    My guess for the hardware would be:

    • 1Mb of static RAM
    • CPU 8088
    • UART1 (used as both monitor and keyboard)
    • UART2 (a micro-controller with an SD card will emulate a floppy drive. The SD will have disk drive images)


    maybe I can get away with using the PIT, and PIC I'm not sure about that...

    And the BIOS layout would be:

    • CPU check routines
    • RAM check
    • Interrupt vector initialize
    • DOS bootstrap loader
    • INT 10 - Video (this one will route all characters to UART1)
    • INT 16 - Keyboard (routine all typed chars to UART1)
    • INT 13 - Disk services


    Will this work?

  2. #2
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    34,566
    Blog Entries
    18

    Default

    What version of DOS? 1.x doesn't need a whole lot.

  3. #3

    Default

    It will work, I'm sure you can boot DOS in this way. But a lot of programs expect to find real video so they can speed up thing by handling the video memory directly. In other words: your system certainly won't be IBM compatible and you have to accept the consequences.
    But personally I like your idea: one can compare it with the bare CP/M systems like Sergey's Easy-Z80.
    With kind regards / met vriendelijke groet, Ruud Baltissen

    www.baltissen.org

  4. #4

    Default

    Quote Originally Posted by Chuck(G) View Post
    What version of DOS? 1.x doesn't need a whole lot.
    I would like to be able to boot at least DOS 3.3

  5. #5

    Default

    Right, it wont be IBM compatible. I was also thinking about trying to simulate the system using Proteus, it has an 8086 processor and I could also add a time and an interrupt controller.

  6. #6
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    34,566
    Blog Entries
    18

    Default

    3.3 using the commodity I/O skeleton (IBMBIO or IOSYS)? You might want to look at the MSDOS 6.0 source, since it's widely available, to see what "gotchas" are lurking in that code.

  7. #7

    Default

    You probably could get away with 256MB of RAM. But since you're getting 1MB, that covers the entire range that the processor can address. So, you'll need to cover the top part with your bios/boot rom.
    If you're not going to have a video card, then you'll need to include a uart and a terminal. I presume you're going to code your own bios, since real ones will want to check every chip on the board and will freeze if anything doesn't work.

  8. #8
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    34,566
    Blog Entries
    18

    Default

    Other than PC98 systems, are there any that use a customized (i.e. non-PC) I/O subsystem that use later versions of DOS?

  9. #9
    Join Date
    Oct 2014
    Location
    near frankfurt/m, germany
    Posts
    1,054

    Default

    Quote Originally Posted by Robbbert View Post
    You probably could get away with 256MB of RAM.
    That would be a lot! Early PCs came up with not more than 128 kB.

    And I just want to remind to FeeDOSm whic is completely Open Source. So you might be able to adapt it to anything.

  10. #10

    Default

    Since you're using static RAM, you could probably portion off a large chunk of that as a battery-backed RAM-disk, and boot DOS off a ROM. Leave maybe 128 or 256k for DOS, map the rest to a RAM disk. IIRC there were some palmtops (HP?) that did that. And since you don't have to worry about the upper memory block since you're using serial instead of a CRT controller with video ram, you have the rest to store programs, files, etc.
    That would avoid the microcontroller, SD card, and the second UART.
    And if it's PC-incompatible already, you could go full hog, and implement some sort of paging for the ram-disk, and get 2, 4, or more MB of "disk". File transfers could be done over the same serial you use for the terminal.
    Current favorites: IBM 5160 (EGA+Hercules+PGC, 8 floppy drives, XT-IDE), DCC D-116 (Nova 1200 clone), ASR 33 Teletype (now FULLY armed and operational! Mostly.)
    Wishlist: IBM 5161 (expansion chassis), Diablo 31/RK02/RK05 or equivalent, Data General Nova software, and the meaning of life.

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •