2.10. Error 454: END FUNCTION expected
---------------------------------------
Versions: 3.0/3.1/3.2
Known : No
This Bug can occur when a comment in an Inline-Assemblerline contains
the ASCII- 154. Please read the previous paragraph for more
information.
2.11. Another REMARK-Problem with $ALIAS
----------------------------------------
Versions: 3.0/3.1/3.2
Known : No
This Bug is easily described. You may not use a ':' (ASCII 58) after a
REMARK when using $ALIAS, becaue PowerBASIC interprets it as an Error
462 (undefined SUB/FUNCTION).
Example:
$ALIAS DATA AS "_DATA" ': Fit C-Segments to PowerBASIC
^
causes Error 462
2.12. The Mistake CDWRD in the OnLine-Hilfe
-------------------------------------------
Versions: 3.0 (possibly only German Version)
Known : Mistake corrected in German Version 3.0?
There is a small typpo in the in the OnLine-Help. Instead of 'CDWD'
(the correct Command), 'CDWRD' was written. The Syntax is spelled
correctly in the Manuals.
Example:
i??? = 1
PRINT CDWRD(i???) : 'wrong Syntax
PRINT CDWD(i???) : 'correct Syntax
2.13. The Mistake CVDWRD in the OnLine-Hilfe
--------------------------------------------
Versions: 3.0 (possibly only German Version)
Known : Mistake corrected in German Version 3.0 beseitigt?
This time the typpo is 'CVDWRD'. Correct Syntax is 'CVDWD'. The Syntax
is correct in the Manuals.
2.14. Crash when pressing CTRL-C
--------------------------------
Versions: 3.0
Known : Bug corrected in Version 3.0
This Bug is widely known and only occurs when you set the
Compileroption $OPTION CNTLBREAK OFF while the BREAK-Flag in DOS is
set to ON. (Usually it is set to OFF by MS-DOS). When you press CTRL-C
under these circumstances your finished program will simply crash.
You can get past this by locking the BREAK-Flag using your own
PowerBASIC-FUNCTION. You can achieve this using the following
routines:
SHARED BreakFlag%
FUNCTION BreakAus public
'Save and deactivate CTRL-BREAK Interrupt
! mov ax, &h3300
! int &h21
! mov BreakFlag%, dx
! mov ax, &h3301
! mov dx, 0
! int &h21
END FUNCTION
FUNCTION BreakReset public
'Restore Control-Break-Interrupt
! mov ax, &h3301
! mov dx, BreakFlag%
! int &h21
END FUNCTION
You can find a file named CNTL.ZIP in some BBS's, it is the official
BugFix.
2.15. Error when producing Output with "CONS:" and CTRL-C
---------------------------------------------------------
Versions: 3.0
Known : Bug corrected in Version 3.10
This Error is also a cause of the CTRL-C Bug, some side effects can
occur when producing Output with "CONS:". More detailed Information is
not known to me personally.
2.16. The Problem with Error 244 in a Stand Alone EXE
-----------------------------------------------------
Versions: 3.0
Known : Bug corrected in Version 3.10
Should you user PowerBASIC 3.0 and work with the Inline-Assembler a
lot, in connection with the two internal PowerBASIC FUNCTIONS
GetStrLoc
GetStrAlloc
the above named Error 244 (Library does not exist) can occur. This
Error only occurs in a Stand Alone EXE and not within the PowerBASIC-
IDE. The two internal PowerBASIC FUNCTIONS must be within a PowerBASIC
Unit. To get aorund this problem use STRSEG/STRPTR, temporary save
them and then MOV them into the corret Processorregisters.
2.17. Problems when linking multiple Lines of Source
----------------------------------------------------
Versions: 3.0/3.1
Known : ???????
The PowerBASIC-IDE as well as the Commandlinecompiler have some casual
problems when you spread Sourcecode over more than one line, when it
actually has to be in one line.
Example:
C$ = CHR$( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)+_
CHR$( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
Experience shows that in connection with bigger projects the Compiler
likes the wrong interpreting of the lines. Saying: The programmer will
get a strange Error omewhere in the Sourcecode. Luckily at the correct
position most of the time.
2.18. Problems with the WATCH-Window and multidimensional Arrays
----------------------------------------------------------------
Versions: 3.0/3.1
Known : Problem corrected in Version 3.10
The WATCH-Window can not display multidimensional Arrays correctly.
2.19. Buggy internal Function/Variable: pbvScrnCols
---------------------------------------------------
Versions: 3.0/3.1/3.2
Known : No
This internal Variable should return the number of currently displayed
columns on the screen. In connection with all modes that do not use
the 40 or 80 column mode, an incorrect number will be returned. Such
modes can be set on every VGA-Card and quite a few Tools (i. e. Disk
Command Center) even support them!
This little FUNCTION can solve this problem:
DIM fixScrnCols AS BYTE
! mov ah, &h0f
! int &h10
! mov fixScrnCols, ah
2.20. Incorrect internal Function/Variable: pbvHost
---------------------------------------------------
Versions: 3.0/3.1/3.2
Known : No
Bit 8 is not set under Microsoft Windows(NT) 3.x
2.21. A little difference in the new InLine-ASM of V3.1/3.2
------------------------------------------------------------
Versions: 3.1/3.2
Known : Correction demanded at PowerBASIC Inc.
This is explained quickly. While PowerBASIC 3.0 accepts the following
line of Inline-Assembler code:
! mov ax, &h0A000
PowerBASIC 3.1/3.2 will not work with it, even if this feature is new
in Version 3.1/3.2.
2.22. The dd-Problem in PowerBASIC 3.1/3.2
-------------------------------------------
Versions: 3.1/3.2
Known : Correction demanded at PowerBASIC Inc.
This is a quickly described Bug, because the new 32Bit &h...., &o....
&b Commands are seen as common knowledge. PowerBASIC simply forgot the
implementation of them in the Inline-Assembler!! You don't believe me,
the try the following:
! dd &h12345678
It still has to be cleared why the command 'dd' exists in PowerBASIC
3.0/3.1 & 3.2 anyways. ;-)
2.23. Undocumented internal Variables in PowerBASIC 3.0/3.1/3.2
---------------------------------------------------------------
The following internal Variables already exist in PowerBASIC 3.0, but
are not documented:
pbvBinBase
pbvDefSeg
pbvHost
pbvScrnBuff
pbvSwitch
pbvVTxtX1
pbvVtxtX2
pbvVTxtY1
pbvVtxtY2
The following internal Variables are not documented from Version 3.1
on, but still exist:
pbvRestore
The position of the Datasegments are identical in PowerBASIC 3.0 and
PowerBASIC 3.1/3.2.
2.24. The PRINT-Bug in PowerBASIC 3.2
-------------------------------------
Known : ????
In Version 3.2 of PowerBASIC Variables of type DWORD are not printed
correctly with PRINT:
Example:
Demo??? = 1234567890
PRINT Demo???
causes the following output:
PowerBASIC 3.0/3.1: 1234567890
PowerBASIC 3.2 : 1.234568+E
Using PRINT USING can help here...
--- CrossPoint v3.11 R
---------------
* Origin: -= http://www.snafu.de/~pbsound/ =- (2:2410/301.12)
|