Breadboard 8088 PC What makes a Micro PC Compatible #22

Поделиться
HTML-код
  • Опубликовано: 20 июн 2024
  • The twenty second in a series of videos to create a retro Intel 8088 PC on solderless breadboards and learn about how computer hardware and software works. In this video following the completion of the MDA video controller, we look at what is needed to turn the current Breadboard 8088 computer into a PC compatible one able to run MS-DOS.
    XT Bus Diagrams minuszerodegrees.net/5160/mis...
    Background Info & Books vintage-computer-books.netlif...
    DMA Page Register explanation. Page 465 vintage-computer-books.netlif...
    IBM Technical Reference Guides
    IBM Monochrome Display and Printer Adaptor minuszerodegrees.net/oa/OA%20...
    PC-XT www.pcjs.org/machines/pcx86/i...
    PC-AT www.pcjs.org/machines/pcx86/i...
    8088 Project Github github.com/breadboardinglabs/...
    Breadboarding Tips • Breadboarding Tips
    Improving Breadboard Power • Nanocomp 6809 #17 Impr...
    Breadboarding Introduction Video "Prototyping and Experimenting with Breadboards" • Prototyping and Experi...
    6809 Project Videos
    Nanocomp 6809 Introduction Video • Nanocomp 6809 #1 Intro...
    Breadboard VGA in 15 minutes runs Tetris • Breadboard VGA in 15 m...
    Nanocomp 6809 in 10 Minutes • 8 Bit Breadboard Micro...
    Nanocomp 6809 on Hackaday.io hackaday.io/project/188095-na....
    Chapters
    0:00 Introduction
    1:02 Block diagrams
    1:56 High Level Plan changes
    2:15 What makes a micro IBM PC Compatible
    3:34 Overview & Bus simplification
    6:58 XT Schematic review
    12:32 X-8088 Schematic review
    14:18 Hybrid PC Issues
    15:31 I/O Ports & Interrupts
    17:31 BIOS Startup sequence
    18:27 Summary and next video
  • НаукаНаука

Комментарии • 7

  • @MK-ge2mh
    @MK-ge2mh 3 месяца назад

    I've been intermittently following this project since it started (I subscribed quite awhile ago). I've been wondering what precisely makes a computer PC compatible and enjoyed this video. Would it be possible to go over the high-level of the requirements, starting from the minimal hardware, but also the memory-map (where things MUST reside vs. BIOS configurability), and when you get to BIOS, spending quite a bit of time on its configuration, please? This would be a very clarifying video, indeed. I can't discern which hardware, addresses, IRQs, are required vs. what is flexible, configurable, or you've modified for your project. I suppose, what MSDOS expects for hardware/addresses/BIOS/IRQs and go from there.
    Thank you for your work on these videos!

    • @breadboardinglabs
      @breadboardinglabs  3 месяца назад

      I will do when I get to that bit, I think in answer to your question "what precisely makes a computer PC compatible" I think it is mainly the BIOS as this can hide most incompatibilities. There are a few things like where the default location of the RAM for a video card is but the card can override that by providing its own video BIOS. The PC was a clever expandable design which I think explained its success even though the original 1MB RAM was a limitation in later years, in 1981 it was a massive amount! Thanks for the feedback. Dave

  • @BLSrr
    @BLSrr 3 месяца назад

    May be a good idea to state that you make a PC compatible not a computer that is MSDOS/FREEDOS compatible. Both are different things. Have said this, running MSDOS on a DIY System makes a system not PC compatible but MSDOS compatible. This Because MSDOS depends completely on the BIOS, at least that was the design requirement when IBM designed the PC to have a abstraction-layer between the OS and the HW. Later when the BIOS code was not fast enough for the work need to be done, more and more programs went directly to the HW and compatibility became important thing, this was special for thru the screen and Keyboard IO.
    Great series to see how you make a DIY PC compatible, any plans when the design runs on the breadboard to make a PCB?

    • @breadboardinglabs
      @breadboardinglabs  3 месяца назад

      Yes I think in my thinking about "PC compatible" I mean 8088/8086 and MS-DOS, PC-DOS and perhaps DR-DOS. To make something 386/486/Pentium+ compatible is completely different (though these all still power on in real mode like the 8088/8086). Its only with 286/386 versions of Windows (and probably OS/2) I think that the drivers took over from the BIOS (I am not an expert in Windows drivers!). I suspect all the stuff like PCI, PCI Express and USB would be a major undertaking to be able to do the same as I am doing here, far too many pins on chips and too complex for 1 person's brain! I am pretty sure Windows 1.0 and 2.x just sit on top of DOS with no VxD drivers etc.
      No plans to make a PCB as Sergey Kiselev has done this already for the XI-8088 and other than the PCB's I made in 1981 I haven't made one since! I was mainly interested in building large projects on Breadboards when a lot of 'professional' advice said not to try it as it wouldn't work (reliably)! Dave

  • @michaelj7677
    @michaelj7677 3 месяца назад

    This is very helpful! Do you know the reason for the X-Bus? I can only guess that DMA transfers are isolated on the normal system bus and system devices on the X-Bus are "protected"? Was it maybe over-engineered?
    Another question: Why are you using LS chips instead of e.g. HCT? I started the project now with mostly CMOS chips and the HCT series. At some point I was worried if I would need stronger drivers like ACT, but then I read that CMOS uses very little input current and I could drive lots of chips with HCT buffers - so am I fine here?

    • @breadboardinglabs
      @breadboardinglabs  3 месяца назад +1

      I suspect it was that the buffers at that time (LS series) may not have had enough power to drive all the onboard logic AND allow for 2 TTL Loads per expansion card (16 TTL loads) or the capacitance of a single bus could have been too high so they split the buses. I suspect the Engineers being IBM made sure it met all specifications and didn't 'wing it' so I suspect it could be over-engineered. ALS logic vs LS has half the max input current so could do twice the fan out. Compaq DeskPro 386 and PS/2 70 uses ALS chips I think. I thought originally X-Bus was related to DMA but I can't see any way how it is (we'll see when I try it!) after spending many hours looking into it.
      As far as LS and ALS TTL vs HCT, I was trying to use early 80's components where possible when I started the 6809 project and stretch to early 90's for things like VGA DAC, Floppy disk controller, keyboard controller etc. The LS and ALS seem to be easier to find in DIP packages (certainly with local component supplier rather than Mouser/RS etc) and once I had a number of them it was easier to keep going! I do have some HCT inverters for crystal oscillators but not really any good reasons not to use HCT just kept going with what I had, I'm sure you will be fine. Not sure if the HCT may be more sensitive to the capacitance on Breadboards at higher frequencies (a power strip bus has about 20pF between rails) so rise times might be slower with lower HCT currents? Might be interesting to do a video on it a some point? I have PLDs in the list already! Comparing LS, ALS and HCT logic families on breadboards! Thanks for the thought provoking feedback. Dave

    • @breadboardinglabs
      @breadboardinglabs  3 месяца назад

      Found this link from Sergey forum.vcfed.org/index.php?threads/ibm-xt-8th-slot-video-card.24433/ Which says "The additional buffering of the X-Bus is required because buffers / transceivers on the ISA bus (between CPU and ISA) won't be able to pull all ISA slots and I/O devices on the system board together.", not a problem for this project for the reasons I gave below.