Re: Question about UMBs
Paul Case <[email protected]>
| Newsgroups | gmane.os.freedos.devel |
|---|---|
| Message-ID | <[email protected]> |
Arkady V.Belousov wrote:
>>>>since, so... I'm wondering how a UMB provider informs DOS that there's
>>>>now memory about the video buffer at A0000-BFFFF?
>>>>
>>>XMS function 0x10 (see RBIL int2f/4310)
>>>
>
> Also 11h and 12h functions.
>
>PC> Ehm... I'm not looking to provide a UMB manager, but just let DOS manage
>PC> them once they're there.
>
> If you install your own XMS manager (which implements UMB support) into
>XMS managers chain, then it may inform DOS that there UMB is available.
>
>PC> I couldn't find the source code to UMBPCI
>PC> anywhere, and since the UMB service it provides looks very attractive to me,
>
> Whay you not clear there? You only should implement above mentioned
>three functions to support UMB. Of course, you also should implement code,
>which will insert your code into existing XMS chain (or create new XMS chain
>and implement installation check).
>
Hmmmm... problem is, I want this program to get out of memory as soon as
it's finished making the UMBs available. Failing that, I'd like the
memory footprint to be as small as possible (if it detected ROM
shadowing was in use, and there was enough memory free in one of the UMB
blocks used for shadowing, I could possibly relocate the resident code
in there... but that's just speculation).
>PC> available to test with). So, I have (in pure DOS mode on this machine)
>PC> an extra 144KB of memory, but I don't know how to inform DOS about it....
>
> You can't, DOS itself gather this info from XMS services if it
>instructed by DOS=UMB statement in config.sys.
>
Okay... so, would DOS allocate all of the UMBs at once, or would it
allocate them as needed?
>>>>is it possible to create a .sys file, loadable by the
>>>>DEVICE command in config.sys, that won't take any memory after
>>>>initialization? Meaning, it loads, does its job, and is completely out
>>>>of memory afterwards.
>>>>
>
> Yes. For example, I have driver, which runs, changes video BIOS fonts
>in shadow memory (localization), then exit without remaining resident code.
>
Could you provide the source? I've never written a .sys file before
(never needed to), so I need to look at one that works to get an idea of
how it works (the only book I have that talks about it, doesn't provide
any example code except on the disk that came with it, and I lost that
the last time I moved).
Thanks to both of the people that've answered so far (Arkady and
Tom) and anyone else that helps,
Paul Case