Howdy, Stranger!

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

Categories

Welcome to the new platform of Programmer's Heaven! We apologize for the inconvenience caused, if you visited us from a broken link of the previous version. The main reason to move to a new platform is to provide more effective and collaborative experience to you all. Please feel free to experience the new platform and use its exciting features. Contact us for any issue that you need to get clarified. We are more than happy to help you.

pdvim emulator

I downloaded the pdvim (fake 286) emulator, and have run a couple of tiny
programs on it (programs that dont use dos at all).

It says in the help that even the unregistered version should have a working "ZD" command
which is to load a virtual dos from the real dos.
(type ZD then return then G then return and see a C> prompt)

I cant get that to work and i dont know why.
help.


Comments

  • oldfogieoldfogie Posts: 2Member
    : I downloaded the pdvim (fake 286) emulator, and have run a couple of tiny
    : programs on it (programs that dont use dos at all).
    :
    : It says in the help that even the unregistered version should have a working "ZD" command
    : which is to load a virtual dos from the real dos.
    : (type ZD then return then G then return and see a C> prompt)
    :
    : I cant get that to work and i dont know why.
    : help.


    It doesn't work because when I wrote it (1987!) you had to
    look damned hard to find even a 286, let alone anything like
    a 80386, 80486, Pentium ( -II, -III, -IV, ...). So, it does
    not understand instructions beyond the 80186 (the 8086/8088
    with some extensions like PUSHA, POPA, etc).

    And "modern" BIOSes use the native instruction set (i.e. 32-bit
    instructions or better). So PDVIM can't understand them, and
    will stop at a register dump (with instruction of DB xxxx) when
    it encounters them.

    Also, using programs like HIMEM or EMM386 or SMARTDRV or ...
    that expect to use the instructions of the higher chips won't
    work, either.

    Time marches on.

    I do have some files that will help run it on newer machines
    (ROM image files, loadable via the ZZ command), not to mention
    the actual "full" version of the software, source code, etc.

    Leave me a message here if you want to know more.


  • melissa_may1melissa_may1 Posts: 937Member

    : It doesn't work because when I wrote it (1987!) you had to
    : look damned hard to find even a 286, let alone anything like
    : a 80386, 80486, Pentium ( -II, -III, -IV, ...). So, it does
    : not understand instructions beyond the 80186 (the 8086/8088
    : with some extensions like PUSHA, POPA, etc).


    Hi!

    So, 14 years ago you wrote a processor emulator. What was it used for? Since it doesn't understand '286 instructions, what would be the purpose of it? Is it designed to run on an 8086?

    I guess I'm confused as to why you'd need an emulator, that doesn't understand much beyond an 8086, that runs [b]on[/b] and 8086!

    I never did much with the '286 back then. I couldn't see the point, I used either '86 or '386, but totally ignored the '286.

    Since you call yourself "oldtimer", I guess you were into this stuff in the early days? I learned ForTran in 1971, and started with micros in 1977.

    Melissa

  • oldfogieoldfogie Posts: 2Member
    :
    : : It doesn't work because when I wrote it (1987!) you had to
    : : look damned hard to find even a 286, let alone anything like
    : : a 80386, 80486, Pentium ( -II, -III, -IV, ...). So, it does
    : : not understand instructions beyond the 80186 (the 8086/8088
    : : with some extensions like PUSHA, POPA, etc).
    :
    : I guess I'm confused as to why you'd need an emulator, that
    : doesn't understand much beyond an 8086, that runs [b]on[/b]
    : and 8086!

    The purpose was as a debugger. Since it was an emulation,
    I could do all sorts of fun things, like "stop on memory
    reference". Or destroy memory and still have a functioning
    debugger. Or use the "W"here command to figure out how I
    got to this point in the code. Or "hotkey" out to the debugger
    without affecting the program I was debugging. Other debuggers
    didn't have capabilities like this until programs like Soft-Ice,
    and VIM still has some tricks they don't.

    Try to debug a boot record with DEBUG and you'll get nowhere,
    because of interrupt vectors being changed and system memory
    overwritten. With VIM, it was a breeze.

    In fact, I'm still using it, though not as frequenly as I used
    to.

    : Since you call yourself "oldtimer", I guess you were into
    : this stuff in the early days? I learned ForTran in 1971, and
    : started with micros in 1977.

    Yup. I started with BASIC in 1974 (dialup teletype to a
    HP 2000C') (yup, the ' is not a typo).

Sign In or Register to comment.