Continued from the previous message...
which would have to be changed to:
DIM Fee%(10) AS SHARED, Fie$(10) AS SHARED
or probably even better:
DIM Fee%(10), Fie$(10)
SHARED Fee%(), Fie$()
in many, but not all cases, PB does not allow type identifiers in
DIM statements, so QB:
DIM SHARED Foe%
would have to be changed to:
DIM Foe AS SHARED INTEGER
(I'm hoping PowerBasic will get more consistent about this)
ELSE--
QB allows a statement on the same line as ELSE, PB does not.
ELSE a = b
becomes:
ELSE
a = b
ERL--
Jim McKeown noticed that QB seems to return ERL equal to the
previous line number in the program, but PB reports the most recent
line that was actually executed. In this example, QB displays
"ERL = 20" and PB displays "ERL = 30".
ON ERROR GOTO Errorhandler
10 GOTO newstmt
20 PRINT "never executed"
newstmt:
GOSUB sub1
ERROR 1
sub1:
30 RETURN
Errorhandler:
PRINT "ERL ="; ERL
END
INKEY$--
Works slightly differently. I use an old TSR with my enhanced
keyboard that only catches Int 16, Service 0. It works with
anything compiled with PB, but somehow QB programs bypass it (by
using Service 10h?) Probably irrelevant for a normal user.
LOCATE with VIEW PRINT--
QB LOCATE refers to rows and columns relative to the whole screen,
even if you have defined only part of the screen with VIEW PRINT.
In PB, LOCATE row, col is relative to the upper left corner of the
area specified by VIEW TEXT.
OPTION BINARY BASE--
in a file opened as binary, QB uses a base of 1, PB defaults to 0.
"OPEN A$ FOR BINARY AS #1"
in QB would have to be changed to:
OPTION BINARY BASE 1
OPEN A$ FOR BINARY AS #1
PALETTE--
QB's PALETTE command actually does two different things. In screen
modes <11 it changes the palette. That is, it can reassign any of
the 64 EGA colors to any of the color attributes used in the current
Continued in the next message...
--- FidoPCB v1.4 [ff013/c]
---------------
* Origin: Sound Advice - 24 Nodes (816)436-4516 (1:280/333)
|