Re: QBasic 1.1 language



On Tue, 28 Aug 2007 20:53:29 -0500,
ArarghMail708NOSPAM@xxxxxxxxxxxxxxxxx wrote:

Like, if you put data in COMMON, it got it's own segment.
I think NAMED common does, not sure about unamed common.

Just think of unnamed COMMON as a common section with the name NONAME,
and you'll understand it, hahaha.

You could have many times the data space available this way.
Yes, but you still have to live with the 64k DGROUP limit, and QBX
eats 20k or so.

What do you understand "gets it's own segment" to mean?

If you used far strings, I'm pretty sure you got another 64K for the
far strings; ditto COMMON. Otherwise my systems/programs weren't
really as big as they were, hahahahaha!

There was also something funny about space allocation for structures
or whatever they were called, that let you bump up variable space as
well, (or maybe that's a different compiler).

In total I think you could "theoretically" get 4 x 64K of data space
altogether, but I never verified this.

Wasn't there also some oddball trick in either BC or the linker that
let you compile subs and link them as overlays? Then when they were
loaded they went in to EMS, so when they ran, they only had to be
copied from EMS to some low memory area to run. So if you had stuff
that didn't get used all the time, you did this to them. It was the
runtime equivalent of that other trick you mentioned earlier.

There was also some bug which I merely avoided rather than solved in
the IDE when you weer adding code to a program. At some point it
would just start giving errors every time you tried to add another
line. So you'd delete some other stuff and try again. Or you'd save
and reload the whole thing - same problem.

What I'd do then is reinstated the whole thing, save it as ascii, load
it into another editor, like Wordstar or something that could handle
any size file, then add the new code I was trying to add in the irst
place. Then I'd load the newer, bigger program into QBX, and most of
the time it would just carry on as if it were the most normal thing to
do????!!!!

I once ramped one program up to over 22,000 lines of source this way.
I eventually hit other limits though that made it too much of a pain
to keep doing this, and it was too much trouble to debug this monster
because you couldn't add one line of code in the IDE without getting
hard complaints.

You also never wanted to "include" any file more than once, because if
you had 2 or more includes of the same file in the IDE, it would load
2 or more copies of the same thing into the IDE. That really ate
space up fast.
Hell, yes. That is why BCET is one single 237k + one 3.6k source
file. The big one is way WAY too big to actually compile with BC.
That is why I have a utility to split it into 13 smaller files to
compile. And some of those are pushing BCs limits.

My source files were huge because they contained all the SUBS. To
compile anything, I just split off all the SUBS into separate files,
added a line at the front of each to copy in the single humongous INC
file whether it needed it or not, and compiled each one that way.

There was a remark flag to indicate if a SUB was overlayable.

The compile .BAT and link .RSP files were built automatically, of
course, so there was no maintenance to do on the compile builder
system, no matter what software I added or changed. It only ever took
about 2 minutes to do about 200+ compiles/links on an old 486. Not
even enough time for a coffee.

Some interesting reading from the QBX help system. With a help page
selected, try searching for:

Overview of Memory Management
Using Expanded Memory

And "/Ea" & "/Nof" in the command line section.

I knew about these, but over time, had forgotten.

Me too. In fact, I moved from Singapore to Toronto a couple of years
ago, and haven't seen my PDS manuals since then. I had read those
absolutely cover to cover, including the link & lib sections, many
times in the previous 12 years, but it's getting a little hazy now.


.



Relevant Pages

  • Re: QBasic 1.1 language
    ... I think NAMED common does, ... That also tells you that the IDE uses up about 350K bytes of space. ... The big one is way WAY too big to actually compile with BC. ... There was a remark flag to indicate if a SUB was overlayable. ...
    (comp.lang.basic.misc)
  • Re: Access errors that I dont understand
    ... While ACCESS at times may "remember" breakpoints that are put in the code ... while a developer is debugging an application, it's not a common situation. ... compact/repair and compile the database, then close the database, then open ... it again and uncomment out the line of code and compile again. ...
    (microsoft.public.access.gettingstarted)
  • Re: How to use shareable image to share data?
    ... file your backing store address. ... you can do a SYS$CRMPSC of your COMMON area using the page ... > I define clognam: ... > I compile and link X: ...
    (comp.os.vms)
  • Re: Compiling VB6 DLLs in Vista
    ... That leaves out a named user folder. ... But WE need the Common Files\CompanyName ... DLLs and as source file DLLs in Wise Script.. ... those who wish to continue to compile VB6 DLLs. ...
    (microsoft.public.vb.enterprise)
  • Re: detect compile environment
    ... must be a common question... ... compile, but it seems like there should be an auto way. ... You can use uname to get some idea about the system where you are. ... CONSUMER NOTICE: Because of the "uncertainty principle," it is ...
    (comp.unix.programmer)