Re: New CBM-II discoveries

From: Ruud_at_Baltissen.org
Date: Tue, 03 Jul 2018 18:04:49 +0200
Message-ID: <5B3B9EA1.15784.5E1E37A@Ruud.Baltissen.org>
Hallo SMF,


> If someone wanted to port a different OS (DOSPLUS for example) without 
> forcing to use a different ROM and not wanting to use the exact same 
> mechanism as the current ROM, they may try to access the 6525 directly.

Michał had to change some things to make MSDOS 3.21 run on the 
CBM-II. But if I understood correctly, he did not have to change 
anything to make it run on the 8255 version !!!

And that is understandable: DOS uses INTs to get something done from 
the computer. If it wants to write something yo the screen, it uses 
INT 10h, if it wants to read something from a drive, it uses INT 
13h. It is up to the computer, more specific: the BIOS, how this INT 
13h is handled. This mechanism enables a computer to boot from an 
EPROM for example. At start-up the "external" ROM changes one or 
more INT vectors, including the 13h one and probably the 19h one. 
When the BIOS wants to boot by issuing INT 19h, the changed vctor(s) 
make sure the data is reas from EPROM instead of a FDD or HDD.

Things started to go "wrong" the moment the software ignored some of 
the INTs and did certain things itself. Best example is writing 
directly to the video memory instead of using INT 10h. Another 
example is writing directly to the LPT port instead of using INT 
17h. I used to have a portable Sharp that use a 8255 to handle the 
LPT port. The original IBM LPT card used some TTL latches. Result: 
some programs didn't run on my "incompatible" PC. Who is to blame, 
Sharp or the programmers?

So as long as DOSPLUS uses INTs to communicate with the BIOS, I 
don't forsee any problem.


--
   
Kind regards / Met vriendelijke groet, Ruud Baltissen
www.Baltissen.org
Received on 2018-07-03 19:00:05

Archive generated by hypermail 2.2.0.