textfiles/apple/ADC/adv.881115

295 lines
16 KiB
Plaintext

AppleLink
APPLE II DEVELOPMENT FORUM CONFERENCE LOG
November 15, 1988 10:00 pm Eastern
Topic: BASIC
Forum Leader: James Luther (AFL Jim)
AFL Jim Welcome to the Apple II Development Forum! Tonight, our topic is
the BASIC programming language, but feel free to bring up any
programming questions. We'll use protocol tonight so everyone gets
a chance to ask their questions or give their comments to the topic
being discussed. Here's how protocol works... First, to let us know
that you'd like to speak, you do the online equivalent of raising
your hand. If you have a question, you signal this by sending a
single question mark (?). If you have a comment to make on the
current topic, you signal this by sending a single exclamation
point (!). We'll add you to our queue (list) of people waiting to
speak. Periodically, we'll let everyone know where they stand in
the queue by sending a line that looks like this:
Q = Don (Bill), Sarah, Sam
The example above shows that Don has the floor, Bill's waiting
to make a comment on the topic or question brought up by Don,
and Sarah and Sam are waiting in line to ask their questions.
When it's your turn to take the floor with your question or
comment, we'll let you know with a short message (something like
"Go ahead with your comment, Bill"). If you aren't quite sure how
this works, sit thru a few minutes of one of our meetings and you
should pick up the flow. By the way, one of the common
abbreviations you'll see us use is GA; GA means Go Ahead. You can
use it when you're done sending your question or comment, so we can
know to call on the next member. Got it? OK, who's on first?
AFL Marty What?
JSchober <ahem> avoiding bad jokes...
AFA Gary J :)
AFL Jim Go ahead Marty
AFL Marty I'd like to know your opinion.... what is the best BASIC for the
Apple IIGS?
AFL Jim MY opinion or everyone elses???
AFL Marty "Best" meaning a nice balance of power with ease of use. your =
plural
AFL Jim OK, I'll start then... I'm sticking by TML-BASIC until I see
something better. AC/BASIC doesn't follow the IIGS standards
closely and I haven't seen Micol close enough to play with it and I
like compiled languages for their speed, so that leaves out IIGS
BASIC If you don't have to have a IIGS BASIC, then Applesoft with
the Beagle Compiler. :)
AFL Marty Reading my mind Jim... re: Beagle Compiler.
JSchober Errr..... you kinda said it all, Jim. :) Well, I like TML Basic
if I want to do some nice SHR programming... it's easy 'nuff.
(Actually, I'd go for Pascal, buttttt... :). Also much faster than
GS/Basic. But for applications where you don't need System16
code... AppleSlush is quite fast....
AFL Marty (what's Pascal doing in a BASIC conf? :)
JSchober <it slipped out... sorry. :) >
AFL Floyd <Pascal, C, Pascal, C> :)
AFL Marty 8-P
AFL Jim Doug, what's your opinion?
DougM21 I second Jim on TML Basic. They've already issued Ver. 1.5 to
clean up bugs... ... and the manual is a LOT better than their
initial product, TML Pascal.
AFL Jim 1.5 TML BASIC??? I thought it was at 1.1 for BASIC and 1.5 for TML
Pascal.
DougM21 Maybe I did get that backwards. Anyway, hooray for upgraded
software!
AFL Jim But, yes... they did fix the initial bugs (including the funky
input statement) Go ahead, Captain....
CptnCrunch Well, what about us people stuck with Applesoft! I think Applesoft
is pretty neat myself!
AFL Marty (I agree, Captn)
CptnCrunch Thankyou!
JSchober Well, yeah, Crunch, it's nice, fast, and compatible with all your
old ASoft programs, BUTTTTT... unless you buy stuff like Iconix and
Sonix, you can't use any of the GS' special features with it. If
you go and buy add-on (& utility) programs such as that, you may as
well go the whole way and buy TML Basic or whatever...
Bobby45 Is TML Basic a compile lang.?
JSchober <yes, Bobby>
AFL Marty Yes Bobby
AFL Jim Speaking of Applesoft, our forum guest on January 31st will be Alan
Bird of Beagle Bros to talk about D Code, Program Writer and the
Beagle Compiler.
CptnCrunch Well, I only have an apple //c, NOT a GS, so I'm kinda
biased....(sp?)
AFL Jim :)
JSchober hehe... Oh. :)
CptnCrunch :( Are we all on GS's?
JSchober <== yup...
AFA Kathy <-- yes
DougM21 [Yup]
Dave Lyons <-- GS!
AFA Gary J GS here.
AFL Jim both
AFL Marty <== GS here
JSchober <well, I've got a ][+, too... that's a neat gaming machine. %)>
CptnCrunch WELL!
AFL Jim Have you tried any of the above mentioned products ^^^^? (by Alan)
Matt DTS [yeah...]
AFL Jim GA Joe on Alan Birds programming tools and then we'll get Kirsh's
question.
JSchober Alright... I'd just like to say that between Program Writer and D
Code, you've got the two darned neatest ASoft utilities on this
earth. Program Writer is a <get this> FULL SCREEN program editor
that I don't leave home without -- does editing of all sorts,
renumbering, auto-numbering, macros, variable x-refs, the works...
and D Code is a program debugger and tracer. Lets you run code one
line at a time (displaying CODE and RESULTS at the same time), show
variables, set breakpoints, the works. Between those two, I've
written BASIC code of over 250k.... (!)
CptnCrunch (WOW!)
AFL Jim That says it, Joe. OK, Kirsh, GA with your question...
KIRSH JSchober, what is SHR programming? Where is the mystery book on TML
BASIC?
JSchober hehe... SHR = SuperHiRes. That's the advanced graphics mode on the
GS. Most GS specific programs use it to create the "desktop
metaphor" -- what the Mac and the GS use, with the pull-down menus,
icons, that kind of thing. Mystery book??
AFL Jim Are you looking for a book on TML BASIC, Kirsh?
KIRSH I've been hearing a lot about a new book on TML BASIC and the
toolbox. Yes
AFL Jim The book isn't in print yet - I've heard there is a holdup at the
publishing house. I've been diggin out answers for people here. Do
you have any specific questions on TML or GS BASIC?
JSchober [babblers note: TML and GS BASICs use the same syntax...]
KIRSH I'm having trouble learning about the toolbox from the Basic
manual.
AFL Jim GA with your comment, Doug...
DougM21 There's a nifty book on beginning toolbox programming called... ...
The Apple IIGS Toolbox Revealed, by Danny Goodman. Published by
Bantam.
JSchober <ahem> Well, that book doesn't actually tell you how to program the
toolbox, it just kinda tells you what the toolbox DOES, and gives
you an overview of memory, graphics, that kind of thing. For an
introduction to toolbox programming, your best bet would be
"Programmers Introduction to the GS", published by
Apple/Addison-Wesley... that's IMHO. :)
AFL Floyd Ah... Joe took the words right out of my mouth. ;)
JSchober ::grabbing words outta Floyd's mouth:: <yank yank>
AFL Jim Marty, GA with your comment...
AFL Marty When I bought my first Apple, the manuals came with the
machine..... ApplleSoft programming, the DOS manual, the works.....
I was just thinking that is sort of a shame that they didn't do
this with the GS. It's awfully hard to locate good sources for
learning materials.
JSchober AMEN, Marty!
DougM21 I SAID beginning, Joe! But, seriously, Joe's right; however...
while you're at it, you'll need Addison-Wesleys Toolbox Refs, vol 1
& 2... if you want to program the Toolbox, Kirsh.
KIRSH Prog's Intro lists Hodgepodge in Pascal, etc. I can't seem to
learn... Pascal and the Toolbox at the same time. Need a book on
BASIC!
AFL Marty (and a second mortgage to buy all those books)
AFA Gary J Right, Marty! :)
CptnCrunch Well, I was just going to say it was nice when 'ole Woz was
involved with Apple and all the manuals came with it, and anyway,
oh nevermind. AMEN Marty!
AFL Marty Do I take the collection now? :)
CptnCrunch Heeh..
AFL Jim Dave, your comment
Dave Lyons I wouldn't mind seeing _some_ more books provided with the system,
but the GS a much more complicated beast than the older IIs were.
(No excuse for leaving out the stuff they used to include with the
IIs, but providing all the info you need to do toolbox programming
would add a good 80 pounds onto everybody's systems!)
AFL Jim Back to you Kirsh
KIRSH Ain't got nothing to say.
AFL Jim OK, Joe, your commentary................ :)
JSchober Well, Dave, they need not include ALL the docs, but at least the
Programmers Intro... umm... I think a copy of Human Interface
Guidelines would be more useful than a complete description of how
to move a mouse across the screen. H.I.G. would take care of both
users and programmers. Toolbox Refs.... yeah, THOSE are 80
pounds... %)
AFL Jim Marty, you're up...
AFL Marty Dave, I was thinking more of introductory materials. When I bought
my Apple II+, it had a manual that described how to interface BASIC
and DOS 3.3 ....
CptnCrunch In ML even!
AFL Marty It was enough to get me going, but it didn't explain all the ins
and outs of DOS. Something for the average guy who wants to control
his own machine occasionally.
AFL Jim GA Dennis (I was wondering when you'd jump into this :)
DennisDoms Well, I'm working 2 computers tonight...I was accused of causing "A
Bit.. of BASIC" to be included with the IIgs because I complained
so vehemently.. about the last of manuals with the IIe/IIc (versus
the II/II+). I think...
Dave Lyons [Geez, is that the thing I sent them about 4 pages of corrections
to?]
DennisDoms well-thought-out-comments to Apple on what you'd like to see in
user manuals.. will be heeded. (Dave..better than not even
mentioning CATALOG in the user... docs!!)
JSchober <=== BASIC manual still in shrinkwrap... %)
AFL Marty Accused?? You make it sound like a bad thing. I'm glad it was
included.... Joe -- not everyone programs in his sleep. Sometimes
non-programmers even visit this forum :)
AFL Jim Matt, GA with your comment
Matt DTS I personally am not incredibly happy that "A Bit of AppleSoft
BASIC" goes out.. ...with every IIgs, because it helps to
perpetuate this myth that you should... ...be able to take
advantage of the IIgs feature-set from AppleSoft. You shouldn't.
AppleSoft is provided as a mode of compatibility, not the...
...be-all and the end-all programming language for the IIgs. The
manual... ...confuses some people into thinking that they can write
"IIgs programs" in... ...AppleSoft. Further, it might convince
people to buy AppleSoft "enhancement" programs that hack access to
the Tools instead of helping them painlessly... ...move to a
IIgs-specific language. <THIS IS A PERSONAL OPINION ONLY>
KIRSH TML question: It looks like param passing to PROC only goes one
way. Right?
AFL Jim Kirsh, the parameters in TML procedures and functions are passed by
value... in other words, the value of the parameter is copied
locally to the function or procedure and is destroyed when the
procedure or function ends. You can use global variables if you
want to procedure to affect the variable everywhere. Any more BASIC
questions before we return to manual wars?
JSchober hehehe...
AFL Jim Dave, your comment?
Dave Lyons Jim, do they provide a way to pass a pointer & simulate var
parameters like C?
AFL Jim Dave, they provide locals passed as parameters, locals created by
the function or procedure OR they can access any global variables.
You can assign a Double Integer variable an address and use it as a
pointer or handle.
Bobby45 yes!
AFL Jim Kathy, you're up...
AFA Kathy Withdraw my ? hence ^? :)
AFL Jim I thought that was a power question :)
JSchober hehehhehe
AFA Gary J LOL!
AFA Kathy :)
AFL Jim Anything else Kirsh?
KIRSH NOPE, I'm enjoying listening.
AFL Jim Bobby, did you have a question?
AFA Gary J Are we going to bring up the manual wars again? :)
Bobby45 I'm just trying to get in to programming on the Apple, and not sure
which lang. is best suited you me. Applesoft and the renumber
problem is frustrating!
AFL Jim Bobby, which Apple II?
Bobby45 IIGS
Dave Lyons (And you want to write GS-only programs, or stuff that works on all
Apple IIs?)
Bobby45 GS and IIe I think I'm going to have to spent some money and get a
good compiler That's all
AFL Jim I'd suggest Pascal if you aren't programming already. You can find
lots of Pascal text books and there are enough people using Pascal
that you'll be able to find lots of sample sample source code, too.
Dave Lyons Jim, is there an 8-bit Pascal currently available? Looks like he
wants the programs to work both on the IIgs and the IIe. Haven't
heard much about Kyan lately.
AFL Jim There's always Apple Pascal 1.3
Dave Lyons :(
Bobby45 Thats always been the key for me... a sample and play around with
it. Thanks
AFL Jim BASIC is available on ALL Apple IIs, so it is a good first
language, too
JSchober Argh.... but it teaches unstructured programming... :(
AFL Jim Joe, your question (before we quit)
JSchober Alright -- what I'd like to do is have a statement in the form CALL
<addr>,X, where X is a REAL or INTEGER (X%) variable. (Oh, this is
ASoft, BTW). I know how to read data FROM the variable -- at least,
if it's integer -- but how do you write TO the variable?? (And how
do you handle reals??) <official 24 part question of the evening...
:) >
Dave Lyons Remind me to look up that stuff 4 you--don't have it on the top of
my head, but I helped write a package of Applesoft enhancements a
few years ago, and they can definitely do that sort of thing.
JSchober Alright, I'll pester you about it... ;) Thanks.
AFL Jim OK, that's it for tonight. The Mac Development Forum is just
starting up across the hall.
AndyWells I've done what has been asked for..
AFL Jim What Andy?
AndyWells I'v done what Joe asked about..
AFL Jim OH, You've written to an Integer from a Call?
AndyWells Sure have.. Get the pointer with PTRGET, and use the pointer at
VARPNT ($83) Low byte at (VARPNT),Y with Y=0, High byte with Y=1
JSchober PTRGET = $xxxx? (I thought that only worked with strings...
hmmm...) Err... $DFE3?
AndyWells PTRGET = $dfe3
JSchober Righto... alright, well, like I said... it didn't work right the
first time when I tried that, but I'll give it another shot...
Thanks!! :)
AndyWells The difference between string and numeric is that the VARPNT points
to the descriptor for strings, and directly to the variable for
numbers
JSchober Oh.... ah HA... that makes sense, then. <scribbling on a piece of
paper... hope it ... oh... I have a log, never mind... :) >
AndyWells I remember writing a GOTO label routine once, but that was a long
time ago..
JSchober Yeah, Andy... well, I'm using this for my BBS. INSTR$() function
and such...
AndyWells Well, since I am the principal programmer on ACOS now, I should
know something.
JSchober Ah HA again... ACOS 2.0, eh?? ;)
AndyWells ACOS 2.0 is in the final stages pf programming right now. It will
require an enhanced //e, and 128k..