🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.ibm.pc.programmer
Article #1142

Re: Code to change from real mode to protected mode (386)

#1142
From: MARC ANDREW PAWLOWSKY
Date: Sat, 06 Apr 1991 03:13
57 lines
2927 bytes
In article <1991Apr4.140649.27253@cm.cf.ac.uk> 
rhl@computing-maths.cardiff.ac.uk (Robert Hartill) writes:

> ...
>While I'm here, has anyone had any success writing protected mode programs
>using Zortech DOS 386, that DON'T use the Phar Lap Dos Extender..
>- I'm trying to do this, I won't make use of any library routines, or the
>memory management system. I'm writing an operating system.
>
>...
>Thanks in advance
>		robert.
>:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
>::     Robert Hartill, Dept Of Computing Mathematics, UWCC, Cardiff, UK.     ::
>::          e-mail : rhl@cm.cf.ac.uk         Fax : 0222 666182               ::
I have used the compiler and it simply does not work.  The bugs I have found,
one of which has been confirmed by Zortech are in the function calling.

When a function is called, not all of the registers that are modified are 
saved, causing the statement following a function call to fail.

Related to this is that the values the functions use and thinks are in
registers, aren't.  So if you pass a parameter with a value of 1,
it becomes something like -1687736363 in the function.

Finaly, and probably for the same reason teh function addresses can get 
mixed up.  If the functions address was supposed to be in a register, or
the register is supposed to point to a virtaul table, then all may be
lost.  Two effects I have observed are for the program to bomb, by going
into never never land; and for the wrong function to be called.

For example given classes A and B, where B inherits from A.

virtual A::f()
// function body

virtual B::f() {
  A::f();
}

This code recursed endlessly in B::f, which is very wrong.

In summary, the compiler does not work and that is what is probably causing 
you trouble, rather than skipping the DOS EXTENDER (I was using Pharr Lap).

There are no fixes for these bugs, in fact there is no bug list, and
therefore no patches.


For those unbitten:

    DON'T BUY THIS PRODUCT.  IT DOES NOT WORK.
    If in doubt check the Zortech bulliten board, 
    where everybody has given up!

Marc Pawlowsky
Montreal, Quebec, Canada
Technical Details
Message-ID: <934@antares.Concordia.CA>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!sdd.hp.com!spool.mu.edu!snorkelwacker.mit.edu!thunder.mcrcim.mcgill.edu!bonnie.concordia.ca!daily-planet.concordia.ca!antares.concordia.ca!marcap
References: <1991Apr4.140649.27253@cm.cf.ac.uk>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!sdd.hp.com!spool.mu.edu!snorkelwacker.mit.edu!thunder.mcrcim.mcgill.edu!bonnie.concordia.ca!daily-planet.concordia.ca!antares.concordia.ca!marcap
From: marcap@antares.concordia.ca ( MARC ANDREW PAWLOWSKY )
Newsgroups: comp.sys.ibm.pc.programmer
Subject: Re: Code to change from real mode to protected mode (386)
Summary: The Zortech DOS 386 compiler does not work !
Message-ID: <934@antares.Concordia.CA>
Date: 6 Apr 91 03:13:35 GMT
Article-I.D.: antares.934
References: <1991Apr4.140649.27253@cm.cf.ac.uk>
Sender: news@Antares.Concordia.CA
Organization: Concordia University, Montreal Quebec
Lines: 57
Nntp-Posting-Host: antares.concordia.ca