TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: Allan Mertner
from: Timo Maier
date: 1996-05-15 16:15:30
subject: VP/2 - really BAD docs

Hi Allan!

After all the problems buying VP in Germany I finally got my copy of VP. (:
(even cheaper than in the UK)

Remeber your VP/2 announcment? at Tue Apr 02

> + Super-fast 32-bit Optimised Compiler
Right!

> + High-quality Integrated Environment and Debugger
Right!

> + Extensive Documentation included
ouh ....

> Full access to the OS/2 API, including full online documentation
Just ONE example I picked out (could add a lot more):

[þ--Taken from SplQmOpen function--------------------------------------------þ]

 This sample code will initialize a PDEVOPENSTRUC and use it to call the 
 function. 

 #define INCL_SPL
 #define INCL_SPLDOSPRINT
 #define INCL_BASE
 #define INCL_ERRORS
>Doesn't really look like Pascal ... ok, I just deleted it.
 
 Uses Os2PmApi;
>Great! Pascal Code!
 
 VOID main()
>): Deleted.

 &lbrc.
>Seems to be the IPC symbol for left brace? (wont' work with :xmp.)

 Var
   Hspl     : HSPL;
>Hu! The name of the var is the same as the type ... ok, changed HSPL to
>LongInt

   Pdata    : PDEVOPENSTRUC; (* Pointer to a DEVOPENSTRUC structure *)
   PszToken : PSZ;           (* Spooler info identifier             *)
>PSZ? Maybe pChar.
 
 Begin
   Hspl     := {at}NOTDEFINED{at}
   Pdata    := {at}NOTDEFINED{at}
>ROTFLMAO ...

   PszToken := "*";
>Change " to '

   (* Allocate memory for pdata *)
   If ( !DosAllocMem( &pdata,sizeof( DEVOPENSTRUC ),
   (PAG_READ|PAG_WRITE|PAG_COMMIT ) )
>A lot of C syntax to change, isn't it?

   &lbrc.
>I'm getting used to it ...

   (* Initialize elements of pdata *)
   pdata^.pszLogAddress      := "LPT1Q1";
   pdata^.pszDriverName      := "IBMnil";
>Change _all_ 'NULL' to 'nil' ... won't work! ):

   pdata^.pdriv              := nil;
   pdata^.pszDataType        := "PM_Q_STD";
   pdata^.pszComment         := nil;
   pdata^.pszQueueProcName   := nil;
   pdata^.pszQueueProcParams := nil;
   pdata^.pszSpoolerParams   := nil;
   pdata^.pszNetworkParams   := nil;
>Ctrl-Q,A Find:" Replace with:'

>Ey --- now it's time for the function call! Forgot this?
 
   If ( hspl  SPL_ERROR )        (* Good spooler handle *)
   &lbrc.
>Becomes boring.

   Writeln('SplQmOpen handle is ',hspl);
 End.
>End. ends the source, any further code will be ignored.

 Else
 &lbrc.
 Writeln('SplQmOpen failed.');
 End.
 End.
 End.
NO COMMENT!
[þ--Taken from SplQmOpen function--------------------------------------------þ]

>More to come...
>  Development of VP/2 continues at a breathtaking rate.  In the next few
>  months, even more features will be added to the list and be made
>  available through online services.

Hopefully fPrint will SOON release a new online help (INF + IDE) ... FOR FREE!
I've never seen the SP/2 docs, but they CAN'T be worser. ))):

Greets ... TAM, Freiburg - Germany
--- timEd/2 1.10+
* Origin: ILLINOIS LICENSE : B263-1655-2187 (2:2476/830.10)
SEEN-BY: 50/99 270/101 620/243 711/401 409 410 413 430 808 809 934 955
SEEN-BY: 712/407 515 517 628 713/888 800/1
@PATH: 2476/830 800 2433/225 270/101 712/515 711/808 934

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.