I have some time-of-day critical satellite tracking hardware wich is
controlled by a DOS program.
This prog  ("hrpt.exe") fails to control the satellite dish under DOSEMU
due to incorrect time of day.
I am using a Pentium 233 PC.
I freed the CMOS-acces (Port $70-$7F) by a line in dosemu.conf :'$_ports
= "range 0x70, 0x7f"

I wrote a test prog to test the clocks, the results are:

There are three methods known to me to read te time of day:
1. Use DOS int $21, AX=$2C00            -- works correct
2. Use SYSTEM int $1A, AX=$0200         -- works correct, but the time cannot
be changed using
                                        the DOS command "time".
3. Use direct port-access to hack the time out of the CMOS.
        -- the hours byte is in binary while the minutes and seconds byte are
in BCD.
                The CMOS states the time to be displayed in BCD (Register $0B of CMOS,
bit 3 of
                8 is clear).

One bug that is common to all times: they run at UTC while my system
runs in European (summer) time as the CMOS does.


There is another problem with that program:

It uses a VESA-screen as display, but there it can only output chars
there, digits of numbers are left blank. All other Super-VGA (VESA)
operations work fine.




Thank you a lot for your help !


BTW: where do I get the sourcecodes of the "stable" releases ?
-- 
Wr8Ul8r,
        Martin
--
Visit: www.computermuseum.fh-kiel.de

Reply via email to