🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: comp.sys.zenith
3 messages
3 total messages Started by cs106132 Mon, 01 Apr 1991 21:21
Zenith DOS 3.3+ problem!
#575
Author: cs106132
Date: Mon, 01 Apr 1991 21:21
16 lines
1319 bytes
   Hello everyone,
I encountered a strange problem when trying to read the boot sector on a
40M hard disk formatted using Zenith DOS 3.3+, the one that supports large
partitions.  The program I am working on needs to read the boot sector and
extract some info from the BPB.  I use DOS absolute read interrupt 25h to
access logical sector 0.  For some reason, this works fine with MS-DOS systems,
but when I try using Zenith DOS 3.3+, it bombs out.
   If anyone out there has done some low level programming under Zenith DOS,
please let me know if there is a reason for this strange error.  If I use
BIOS int 13h with the info I get from partition table, I can get the boot
sector, but I would like to use DOS to stay compatible with the majority...
Any info will be appreciated.

Regards,
Tarkan
Re: Zenith DOS 3.3+ problem!
#577
Author: Jack Wiggins
Date: Tue, 02 Apr 1991 06:37
9 lines
837 bytes
Is it a Zenith system you're trying this on with a zenith hard drive 
controler?


--
Jack Wiggins                       NSTAR conferencing site 219-289-0287
internet: jackw@nstar.rn.com              1300 newsgroups - 8 inbound lines
uucp: ..!uunet!nstar.rn.com!jackw            99 file areas - 4300 megabytes
---  backbone news & mail feeds available - contact larry@nstar.rn.com  ---
Re: Zenith DOS 3.3+ problem!
#582
Author: Paul E. Berg
Date: Thu, 04 Apr 1991 22:15
36 lines
2245 bytes
In article <1991Apr1.212138.18402@umbc3.umbc.edu>, cs106132@umbc5.umbc.edu (cs106132) writes:
>  
> I encountered a strange problem when trying to read the boot sector on a
> 40M hard disk formatted using Zenith DOS 3.3+, the one that supports large
> partitions.  The program I am working on needs to read the boot sector and
> extract some info from the BPB.  I use DOS absolute read interrupt 25h to
> access logical sector 0.  For some reason, this works fine with MS-DOS
> systems, but when I try using Zenith DOS 3.3+, it bombs out.

Since you noted that 3.3+ has support for large partitions I assume that
you are in using one here.  For this case you need to use int 25 with
CX=-1 and DS:BX=far pointer to a parameter packet, a la the MS-DOS 4.0 way.
Normally, your application should try the int 25 as you have it now, and if
you get an error (carry set and AX=0207) retry the int 25 with the CX and
DS:BX changes.

In case you're wondering, this approach is also compatible with generic
MS-DOS 4.0 as well as the soon-to-be-available MS-DOS 5.0.  In fact, this is
one of the few ways of reliably determining that you have a large partition.

Just in case you don't have the appropriate reference manual...
the DS:BX parameter packet referred to above is:
   starting sector number   dd  ?
   number of sectors        dw  ?
   transfer address         dd  ?

> Regards,
> Tarkan

Best of luck...
--____                 ___     ____
  /|  )        /)     /   '    /|  )               Paul E. Berg
 / |-'__      //     /--      / |-<   _  __  _     Zenith Data Systems
(_/  (_(_(_(_(/_    (___,o   (_/___)_(/_/ (_(_)_   ZDS Technology Center
                     voice (616) 982-5124    /|    150 Hilltop Road
paulb@zds-ux.ZDS.COM   fax (616) 982-5690   (/     St Joseph, MI  49085
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads