Some DLL Questions

I know, this isn't the best place for it, but I want anyone that has some experience, so here goes. I'm looking into making a few .dlls to do some low-level stuff, I'm not exactly sure what all I want them to do, probably just some video initialization crap, like setup a vga screen or do some vesa stuff (I know, you think it's useless, but I like to do stuff this way!!!). Anywho, I started thinking, will Windoze let me do that, I know .dlls work regardless of language, but will they work regardless of platform (e.g. written for 16-bit real mode DOS and run in 32-bit protected mode Windows)? Any input here?

Comments

  • : I know, this isn't the best place for it, but I want anyone that has some experience, so here goes. I'm looking into making a few .dlls to do some low-level stuff, I'm not exactly sure what all I want them to do, probably just some video initialization crap, like setup a vga screen or do some vesa stuff (I know, you think it's useless, but I like to do stuff this way!!!). Anywho, I started thinking, will Windoze let me do that, I know .dlls work regardless of language, but will they work regardless of platform (e.g. written for 16-bit real mode DOS and run in 32-bit protected mode Windows)? Any input here?
    :
    [blue]
    What do you mean by "low level stuff"? Im assuming low-level vga
    routines (ie; Mode 13h) in a dll. This should be possible in
    a 16-bit dll--Not 32-bit dlls.

    What do you mean be "Dlls work reguardless of language"?
    Not all programming languages support it..

    Dlls are not nativaley supported on any real mode system
    that I know of. (Primarily because of the 1MB limit),
    which is why OSs switch into protected mode.

    btw, Putting all video code in a dll is a good idea.
    I recommend providing both dll and static library linkage
    to improve portability between languages and systems.
    (My engine is designed around this model.)

    Hope this helps;

    ~mt2002[/blue]
  • : but will they work regardless of platform (e.g. written for 16-bit real mode DOS and run in 32-bit protected mode Windows)? Any input here?
    :


    There is no such thing as a 16-bit dll.
  • : : but will they work regardless of platform (e.g. written for 16-bit real mode DOS and run in 32-bit protected mode Windows)? Any input here?
    : :
    :
    :
    : There is no such thing as a 16-bit dll.
    :
    [green]
    That`s incorrect. Win9x had lots of 16-bit dll-s, they were used to access some low-level privileges like direct disk access via DPMI. Win9x were mixed 16-/32-bit, whereas WinNT was fully 32-bit, that`s when 16-bit dll-s lost significance.

    Here`s an example of a program that uses a 16-bit dll for win9x and native API calls for WinNT:
    http://www.chrysocome.net/explore2fs

    However, there are no such things as DOS dll-s. As MT2002 already mentioned, dll-s aren`t used on real mode software platforms.[/green]
  • : : : but will they work regardless of platform (e.g. written for 16-bit real mode DOS and run in 32-bit protected mode Windows)? Any input here?
    : : :
    : :
    : :
    : : There is no such thing as a 16-bit dll.
    : :
    : [green]
    : That`s incorrect. Win9x had lots of 16-bit dll-s, they were used to access some low-level privileges like direct disk access via DPMI. Win9x were mixed 16-/32-bit, whereas WinNT was fully 32-bit, that`s when 16-bit dll-s lost significance.
    :
    : Here`s an example of a program that uses a 16-bit dll for win9x and native API calls for WinNT:
    : http://www.chrysocome.net/explore2fs
    :
    : However, there are no such things as DOS dll-s. As MT2002 already mentioned, dll-s aren`t used on real mode software platforms.[/green]
    :
    Alright, I figured that dlls wouldn't work for DOS type functions wouldn't work that way. I am planning on doing my graphics in a .dll I was just seeing if I could maybe do some stuff with VESA and VGA just for kicks and grins. Thanks for the input guys!!!
Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Categories