home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Boston 2
/
boston-2.iso
/
DOS
/
PROGRAM
/
BASIC
/
POWBASIC
/
LIBRARY1
/
EXAMP2.ZIP
/
PB091090
< prev
next >
Wrap
Text File
|
1990-09-10
|
17KB
|
480 lines
all
H#: 64621 S12/SPECTRA Publishing
08-Sep-90 07:04:00
Sb: #64316-Peace and Quiet !
Fm: Richard Thompson 73200,3071
To: Harry McDonald 74776,1017
Hi Harry,
Thanks for the tip. I was going to go out later this afternoon and see
what is available. Don't need details your recommendation is enough.
Thanks,
Rich
Press <CR> for next or type CHOICES !
H#: 64657 S12/SPECTRA Publishing
08-Sep-90 10:35:49
Sb: #64284-Peace and Quiet !
Fm: Bob Zale: PowerBASIC R&D 76304,1303
To: Mason Landstreet 71220,1547
We do allow OPEN "A",1,"<filename>". Please see it on page 193 of the
PowerBASIC Reference Guide. However, the alternate form of OPEN is the one
that will see most use in the future. The reason is simply network control.
In PB #2.10, we've added support for file access limitations
(read/write/read-write), as well as locks (lock read/write/read-write/ shared).
It necessary for these options to be specified as literals at compile-time,
just so they can be error-checked then. If not, it would probably add a K or
two to the size of your .exe's just to do this error-checking every time a file
is opened. Incidentally, we've opted to use the identical syntax for network
OPEN's as in found in Microsoft's QB and BC7.
Other new features in PB #2.10? More program capacity. Some beta testers
have already reported they can compile programs 30-35% larger than with PB
#2.00. Obviously not eveyone will see that large an increase and some will see
more. Regarless of the exact %, it's substantial. Also,
exe files are faster and smaller. A few common bechmarks are 500% faster, and
.exe's are usually 5% to 20% smaller. We've added DIR$ to read file,
directory, and volume names; ATTRIB to set or read a file attribute; CHDRIVE to
set the default drive; CURDIR$ to read the default directory/path; COM3 and
COM4 are now supported, as well as baud rates of 19200, 38400, 57600, and even
115200 (if your hardware will handle it); an option to keep DTR high after COM
file close; LOCK and UNLOCK statements for networks; better error messages for
$LINK (yes, we finally even tell you the name of an unresolved external, and
other similar things); more improvements in .OBJ linking (emulated 87 opcodes,
sharing of public data and code between .obj's). And even more. The formal
announcement will come shortly. Stay tuned right here!
Bob Zale (PowerBASIC R&D)
Press <CR> for next or type CHOICES !
H#: 64653 S12/SPECTRA Publishing
08-Sep-90 10:16:12
Sb: #64188-Peace and Quiet !
Fm: Bob Zale: PowerBASIC R&D 76304,1303
To: George Green 70565,276 (X)
Thanks for the inquiry, George. We're working on the formal announcement of PB
#2.10 right now, and expect to have it posted here within a couple of days at
most. I really think you'll like it, so please keep watching.
Bob Zale (PowerBASIC R&D)
Press <CR> for next or type CHOICES !
H#: 64600 S12/SPECTRA Publishing
07-Sep-90 22:54:28
Sb: #64415-#Peace and Quiet !
Fm: Howard Ballinger 71121,776
To: Howard Ballinger 71121,776 (X)
Bob --
Ohmigosh yes, there's one more LARGE wish for the list(s): when linker
error 503, unresolved EXTERNAL variable, occurs, please have the
machine TELL ME WHICH variable!
I have an error of that sort right now that I can't find -- and I don't
think I should upload the code for perusal because it's the database
section of the TB database tool kit; I'm trying to convert it into
a separately compiled Power Basic Unit using STATIC arrays.
But lo! Did I by any chance see the name of the author of that toolbox
on a recent message on your forum ?? If so, maybe he could assist me.
Maybe he's done the job already and would be willing to share with a
registered user of the Borland product.
By the way, I never did manage to find a way to delete a key from a
dups-allowed index using the "low-level" calls. I tried every way I
could. So I just reindex the whole file when I need to.
One other wish, now you got me started: could there be a MAKE - type
function which would recompile any unit whose .PBU file was older than
its source file, before compiling the main program & linking ??
Regards,
-- Howard
There are 2 Replies.
Press <CR> for next or type CHOICES !
H#: 64609 S12/SPECTRA Publishing
08-Sep-90 04:48:29
Sb: #64600-Peace and Quiet !
Fm: Mike Burns 71551,1353
To: Howard Ballinger 71121,776 (X)
Howard,
I will eplex you the steps I went through to change my
toolbox to .pbu's.
You can delete keys when dups allowed has been set. You need
to have the correct DataRef& to pass to DeleteKey. To get this
you have to Read the key before deleting. I will send you
the source to a .pbu that manipulates a file with multiple
keys. It may look a little strange, I use the second key file
to hold 5 different sets of keys to save files.
The file will be a .zip file.
Mike
Press <CR> for next or type CHOICES !
H#: 64662 S12/SPECTRA Publishing
08-Sep-90 11:58:38
Sb: #64600-Peace and Quiet !
Fm: Barry Erick for Spectra 75300,214
To: Howard Ballinger 71121,776 (X)
Howard,
2.10 will do the wish #1... tells you what variable!
--- Barry
Press <CR> for next or type CHOICES !
H#: 64661 S12/SPECTRA Publishing
08-Sep-90 11:50:47
Sb: #64415-Peace and Quiet !
Fm: Bob Zale: PowerBASIC R&D 76304,1303
To: Howard Ballinger 71121,776 (X)
Howard--
Thanks a bunch for all your comments! I haven't been able to find a problem
with unassigned constants as you mentioned. If a named constant is not
assigned a value, references to it should return zero, and it seems to do that
in my tests. Could you be assigning some other value in a hidden place, like
an $include file? If you have an example, I'd love to see it.
Erasing static arrays from a unit can be a problem. The reason is this:
PowerBASIC assumes that all arrays declared PUBLIC/EXTERNAL are dynamic, and it
generally forces them to be so. If you have a DIM STATIC A$() and a PUBLIC
A$(), you'll get an error. However, if you forget the PUBLIC, PB is a little
too forgiving, and still resolves the external references to the array A$() in
your unit files. Unfortunately, when the unit was compiled, PB followed it's
own rules, and presumed A$() was dynamic, and so trys to release static memory.
Confusion reigns, and memory is corrupted. Very sorry for the problem and the
inconvenience.
Bottom line: Any arrays used as PUBLIC/EXTERNAL must be dynamic. If DIM'd
as static, you're inviting trouble. All future versions of PowerBASIC will
warn you of this error condition. Thanks VERY MUCH for your help!
Bob Zale (PowerBASIC R&D)
Press <CR> for next or type CHOICES !
H#: 64573 S12/SPECTRA Publishing
07-Sep-90 18:09:18
Sb: #64469-#$Link & ^KP Questions
Fm: Richard Kanarek 72371,111
To: Barry Erick for Spectra 75300,214 (X)
I'm sorry, I don't know what a "balcnk problem" is.
Thanks for the other information!
Richard
There is 1 Reply.
Press <CR> for next or type CHOICES !
H#: 64617 S12/SPECTRA Publishing
08-Sep-90 06:46:43
Sb: #64573-$Link & ^KP Questions
Fm: Barry Erick for Spectra 75300,214
To: Richard Kanarek 72371,111
Well, a "balcnk problem" a.k.a. "blank problem" when the keyboard can't spell
(actually my archive shows I spelled it balnk.. I do not know where the c came
from). :)
--- Barry
Press <CR> for next or type CHOICES !
H#: 64599 S12/SPECTRA Publishing
07-Sep-90 22:43:49
Sb: #DIR in PB ot TB ?
Fm: ed evans 73135,1606
To: all
So Id like a subroutine that will read DIR info into string variables. I found
one for QB4 that looks lik it might do it, but as these things go, its just
dufferent enough to not work. So I either rewrite it, or search for a urbo or
Power basic version that already exists. This has GOT to exist! How could it
not ... I need all file info ... a long string per DIR linw would be fine. Any
suggestions ? -=ed=
There are 2 Replies.
Press <CR> for next or type CHOICES !
H#: 64663 S12/SPECTRA Publishing
08-Sep-90 11:58:45
Sb: #64599-DIR in PB ot TB ?
Fm: Barry Erick for Spectra 75300,214
To: ed evans 73135,1606
Ed,
real soon there will be an update to 2.10 that will have that in it. In the
neanwile, you may want to check for findfirst, or getdir.zip. Anyway, in the
library, I do have something that does that. May be called finfil.zip, also. A
BRO key:Dir* should get it. Found it.. FNDFIL.ZIP is the file.
--- Barry
Press <CR> for next or type CHOICES !
H#: 64670 S12/SPECTRA Publishing
08-Sep-90 13:11:39
Sb: #64599-DIR in PB ot TB ?
Fm: Howard Ballinger 71121,776
To: ed evans 73135,1606
Another source for what you want -- I just uploaded a new version of my own
toolkit. Link it in and CALL DirFirst, then DirNext.
-- Howard B.
Press <CR> for next or type CHOICES !
H#: 64636 S12/SPECTRA Publishing
08-Sep-90 09:24:05
Sb: #PBPLUS96.EXE shortfall
Fm: BRUCE NOPPER 73300,2444
To: Bob Zale
This is regards to the description for the file pbplus.zip. The fact that this
patch to EGA/VGA memory will not work if the system memory is less than 640k.
There is 1 Reply.
Press <CR> for next or type CHOICES !
H#: 64651 S12/SPECTRA Publishing
08-Sep-90 10:12:10
Sb: #64636-PBPLUS96.EXE shortfall
Fm: Bob Zale: PowerBASIC R&D 76304,1303
To: BRUCE NOPPER 73300,2444
You're absolutely right, Bruce. PBPLUS96 will not be usable at all, unless you
have 640k of main memory. I guess we just presumed that PBPLUS96 users would
have 640k available, as that is the published minimum memory requirement for
PowerBASIC. I hope that it didn't cause you too much of an inconvenience.
Bob Zale (PowerBASIC R&D)
Press <CR> for next or type CHOICES !
H#: 64660 S12/SPECTRA Publishing
08-Sep-90 11:16:16
Sb: #.pbu's for TOOLBOX
Fm: George Green 70565,276
To: Mike Burns 71551,1353 (X)
Mike,
I noticed in one of your messages that you have converted the TB-db toolkit
over to .PBU'S. Any chance of your posting the steps you took in the
data library here. There would probably be several people interested in
this. It's a project I've been putting-off myself for some time now.
-George Green
There is 1 Reply.
Press <CR> for next or type CHOICES !
H#: 64677 S12/SPECTRA Publishing
08-Sep-90 14:59:46
Sb: #64660-#.pbu's for TOOLBOX
Fm: Mike Burns 71551,1353
To: George Green 70565,276 (X)
George,
Here are the basic steps although I did it quite awhile
ago:
To create a dblow.pbu
1) First I put a bunch of shared statements at the top of
dblow.box. These statements shared any variable that was
shared by access.box, delkey.box, getkey.box, addkey.box.
I also added to the words local to ALL SUBs (this
is defualt and not needed but I did it to protect for
future versions).
2) Add the keyword PUBents. 4) The only EXTERNAL vardbStatus.
I modified dbInit to accept dbMaxFiles% as a parameter.
At this point you should be able to create a dblow.pbu.
[More]
There is 1 Reply.
Press <CR> for next or type CHOICES !
H#: 64678 S12/SPECTRA Publishing
08-Sep-90 14:59:54
Sb: #64677-#.pbu's for TOOLBOX
Fm: Mike Burns 71551,1353
To: Mike Burns 71551,1353 (X)
[Continued]
(cont).
5) You need to create a file that declares all the public
routines and their parameters.(I call mine dblow.dec)
' Routines Found In DBLOW.PBU
DECLARE SUB AddKey(INTEGER, LONG, STRING)
DECLARE SUB AddRec(INTEGER, LONG)
DECLARE SUB ClearKey(INTEGER)
DECLARE SUB CloseFile(INTEGER)
DECLARE SUB CloseIndex(INTEGER)
DECLARE SUB DeleteKey(INTEGER, LONG, STRING)
DECLARE SUB DeleteRec(INTEGER,LONG)
DECLARE SUB GetRec(INTEGER, LONG)
DECLARE SUB GetStatus(INTEGER, STRING, INTEGER, STRING, INTEGER, INTEGER)
DECLARE SUB MakeFile(INTEGER, INTEGER, INTEGER, STRING)
DECLARE SUB MakeIndex(INTEGER, STRING, INTEGER, STRING, INTEGER, INTEGER)
DECLARE SUB NextKey(INTEGER, LONG , STRING)
DECLARE SUB OpenFile(INTEGER, INTEGER, INTEGER, STRING)
DECLARE SUB OpenIndex(INTEGER, STRING, INTEGER, STRING, INTEGER, INTEGER)
DECLARE SUB PrevKey(INTEGER, LONG , STRING)
DECLARE SUB PutRec(INTEGER, LONG)
DECLARE SUB SearchKey(INTEGER, LONG, STRING )
[More]
There is 1 Reply.
Press <CR> for next or type CHOICES !
H#: 64679 S12/SPECTRA Publishing
08-Sep-90 15:00:03
Sb: #64678-#.pbu's for TOOLBOX
Fm: Mike Burns 71551,1353
To: Mike Burns 71551,1353 (X)
[Continued]
(cont).
6) Add to this dblow.dec file the named constants and dbStatus.
' return codes for database stuff
EXTERNAL dbStatus
%Okay = 0
%FileNotFound = 1000 'You tried to open a non-existant file
%FileAlreadyCreated = 1001 'You tried to create an already-created file.
%InvalidCall = 1002 'You used a command that doesn't exist.
%FileNotDBLOW = 1003 'The file exists, but is not an DBLOW file.
%TooManyFiles = 1004 'You have opened more than MaxFiles files.
%KeyNotFound = 1005 'You have referenced a non-existant key.
%EndOfFile = 1006 '
%FileNotOpen = 1007
%KeyAlreadyExists = 1008
%TooManyKeys = 1009
%FileNotDBHIGH = 1010
%FileAllowsDups = 1011 'You tried to open a Duplicate-key file in
'non-Duplicate mode
%BadParameter = 1012 'Parameter out of range
'==== This file is included at the beginning of each unit that
' uses a routine in dblow.pbu.
In the main program you would declare dbStatus as PUBLIC and link
in dlblow.pbu.
[More]
There is 1 Reply.
Press <CR> for next or type CHOICES !
H#: 64680 S12/SPECTRA Publishing
08-Sep-90 15:00:09
Sb: #64679-#.pbu's for TOOLBOX
Fm: Mike Burns 71551,1353
To: Mike Burns 71551,1353 (X)
[Continued]
(cont).
This should get you started. I also changed the DIM statements
in dbINIT to be DIM DYNAMIC.
The other .box routines are roughly the same. You will
want to keep the public variables at a minimum in order to
minimize name conflicts. I do have all the Ent. variables
declared as public/external from that toolbox.
You should end up with the following .pbu's.
scrnasm.pbu, scrnsubs.pbu, entsubs.pbu, dblow.pbu,
dbhigh.pbu, sort.pbu. These will include the other
.box files during the compile. You do not need
to compile a access.pbu, getkey.pbu, etc.
If you have any questions ask and I will try and answer them.
It's been awhile since I converted to units so I may have
left something out.
Mike
There is 1 Reply.
Press <CR> for next or type CHOICES !
H#: 64717 S12/SPECTRA Publishing
08-Sep-90 23:04:37
Sb: #64680-.pbu's for TOOLBOX
Fm: George Green 70565,276
To: Mike Burns 71551,1353 (X)
Mike...
Thanks for all the msgs, I'll get to work
-George Green \ex
Press <CR> for next or type CHOICES !
H#: 64770 S12/SPECTRA Publishing
09-Sep-90 16:32:10
Sb: #NUMERIC TYPES
Fm: DOUG MILLER 73757,1300
To: BOB ZALE
I'VE TRIED TO KEEP MY FOOT IN BASICA I DON'T KNOW THAT IN PB IF DIFFERENT TYPES
CAN BE MIXED LIKE A@ A# MKMD$(A#) A@=CVMD(A$) AM I DOING SOMETHING THAT WON'T
WORK THANKS
There is 1 Reply.
Press <CR> for next or type CHOICES !
H#: 64777 S12/SPECTRA Publishing
09-Sep-90 17:58:42
Sb: #64770-NUMERIC TYPES
Fm: Bob Zale: PowerBASIC R&D 76304,1303
To: DOUG MILLER 73757,1300 (X)
Doug --
PowerBASIC always does automatic type conversions. Never a problem, so no
need to worry about it.
Bob Zale
Press <CR> for next or type CHOICES !
HPC Vendor B ForumHSections Menu
Section names (#subjs/# msgs)
1 Quarterdeck (60/136)
2 Primavera Systems (1/1)
3 Korenthal Assocs. (1/2)
4 Personics Corp. (22/59)
5 Quicksoft (4/8)
6 TurboPower Software (45/106)
7 ChipSoft, Inc. (1/2)
8 DacEasy (8/11)
10 J.P. Software (9/41)
11 PDC Prolog (6/10)
12 SPECTRA Publishing (6/22)
HEnter choice(s) or ALL !