America Online
APPLE II DEVELOPMENT FORUM CONFERENCE LOG
Tuesday, April 3, 1990 10:00 pm eastern daylight time
Topic: Programming in C and Pascal
Forum Leader: Dave Sugar (AFL Dyfet)
AFA Gary J Ok, let's get started.
AFA Gary J Good evening, and welcome to the Apple II Development Forum. I'm
Gary
AFA Gary J Jacobson, standing in for Dave Sugar for a while here...
Tonight's Topic
AFA Gary J is Programming in C and Pascal.
AFA Gary J We'll be using protocol to maintain some order here, so if you
would like to
AFA Gary J ask a question, type a "?" on a line by itself, or if you have a
comment
AFA Gary J on the current topic, type a "!" on a line by itself. I'll keep
track of
AFA Gary J who's up next, and will call on you in turn.
AFA Gary J It looks like Parik was quick to get the first question of the
evening in.
AFA Gary J GA, Parik
AFA Parik hiya. Whats the MOVELEFT function do in TMLPascalII?
Dave Lyons Moveleft...I think it's like an MVN, basically.
Dave Lyons (Moves a block of memory to a lower address. More like a
BlockMove, I suppose.)
AFA Parik ahh, makes more sense now. thanks
Doctor Why Dave is correct. (as usual)
AFA Parik is a pascal BAnd = AND in assembly, and a BOR = ORA? or EOR?
gfa
AFA Gary J GA, Dave
Dave Lyons Yes, band is "bit-wise and", like AND in assembly. Never used
bor, but I bet it's ORA, not exclusive
Dave Lyons or. ga
AFA Parik better hunt around for Oh! Dondra..er..Pascal and check those
truth tables. :)
AFA Gary J GA, Doc
Doctor Why It is a logical or, there is a BXor that is the exclusive or
Doctor Why GA
AFA Parik thanks a lot guys! ga
AFA Gary J Ok, A2GS has the next question. GA A2
A2GS Was looking at the flyer for the new ORCA linker (ZapLink) and
it's suppose to
A2GS have "Dot File Support", What the heck is that??? GA
AFA Gary J GA, Joey
JSchober I don't remember, but I highly recommend ZapLink -- it's amazing!
:) GA
AFA Gary J :)
AFA Gary J GA, Andy
A2GS You should know!
A2GS Andy..
ShrinkIt I think that mike was referring to .ROOT, .A, .B and so on... file
support
ShrinkIt mechanisms... linkIIGS needs stuff to be crunched using crunchIIGS
first,
ShrinkIt zaplink does not.
ShrinkIt ga
A2GS O.K. never heard it referred to in quite that way. Thanx
A2GS GA
AFA Gary J Thanks, Andy. Cecil has our next question. GA, Cecil
A2GS Or should I say Done!
CecilFret i HAVE NOT been in conference for a while. How does one send a
flash
CecilFret note. I thought Open Apple-F but it has changed. What gives?
CecilFret ga
AFA Gary J :)
AFA Gary J Things have changed. It is now OA-I
AFA Gary J (Back to the original Instant Messages)
AFA Gary J Hello Dave!
AFL Dyfet I had a cold in my node...
AFA Gary J Cecil was also telling us about something just before the chat
this evening,
AFA Gary J could you give us some more details?
CecilFret ready Gary?
AFA Gary J Yes! :)
CecilFret Ok, I had a prepared text on a nice file and find I can't send it
direct.
CecilFret So excuse some typow. A ten line message is to follow:
CecilFret With David Eyes and Ron Lichty, I am proud to announce that
CecilFret I have converted the asembly language code in their book
CecilFret "Programming the Apple IIgs in Assembly Language" to APW C
CecilFret and ORCA/C. Right now, you can buy the disk and three pages
CecilFret of notes directly from either myself or Ron Lichty. Later
CecilFret on, we hope to have other outlets selling it too. My address
CecilFret is Cecil Fretwell, 2605 Highview Ave. Waterloo, Iowa 50702
CecilFret Send $20 and I will send by reply mail a 3.5" disk
CecilFret containing both APW C and ORCA/C code
CecilFret and the three pages of notes.
CecilFret wow
CecilFret ga
AFL Dyfet Thank you Cecil...
Steve Br Does anyone here use TML Pascal II?
AFL Dyfet We are using PROTOCOL here tonight, Steve...
Steve Br Oh. Sorry.
AFA Gary J (I'll put your name in the queue, Steve)
AFL Dyfet And in fact, I believe Parik has the next question, but we will
get back to you
AFL Dyfet shortly, Steve...GA Parik...
AFA Parik Origin systems is lookin' for a stud C programmer to port over
Ultima VI to the
AFA Parik GS!! yah! they'll hand you C code, you work like dickens. call
512-328-0282
AFA Parik for more info (and be prepared to be grilled for qualifications
:). ga
AFL Dyfet Sounds like a fun project for someone :)
AFA Gary J :)
A2GS They don't like Assembly Language?
AFL Dyfet Well, I guess there is little to speculate on that until someone
calls and
AFL Dyfet finds out :)...
AFL Dyfet Okay, I believe that Steve has the next question and the floor
now...GA Steve..
A2GS Sounds like they aren't the II people they used to be!
Steve Br Ok. Parik - is Origin based in Austin (I'm in Austin).
Also...has anyone used
AFA Parik (yes Steve)
Steve Br TML Pascal II extensively, and if so have you had any major
problems with it?
AFL Dyfet I have had my share of problems with TML Pascal II, what kind of
problems were
AFL Dyfet you encountering, Steve?
Steve Br Well, I haven't used it too much yet. I have it - I upgraded from
the original
Steve Br TML Pascal. I have used it some, and have had problems. I am
about to write
Steve Br a pascal program, and wondered if I should use my TML or try
something else.
Steve Br I have mainly had memory problems when trying to compile. Also, I
have had..
Steve Br .. problems trying to use the resource editor.
AFL Dyfet Well, at the moment, the only other choice seems to be
Orca/Pascal, which also
AFL Dyfet means using the Orca shell environment. As to problems with the
resource
AFL Dyfet editor, yes, a number of people have had problems with it...
AFL Dyfet Has anyone else had experiance with TML Pascal II they wish to
comment on?
AFL Dyfet Go ahead Cecil...
CecilFret Vince Cooper is supposed to be the Pascal Guru at TML. You
might
CecilFret try to talk to him.
CecilFret ga
JSchober (screen name "AFL Vince" :-)
AFA Gary J (AFL Vince)
CecilFret (forgot that, thanks)
Steve Br Ok. Thanks.
AFL Dyfet Okay, I believe our next question is from Whistles...GA
Whistles...
Whistles What would an upgrade from original TML Pascal to the latest cost
now, .......
Whistles and is it worth it in your opinions? Compared to Orca's latest
Pascal.
Whistles ga
AFL Dyfet My own preferences would be tword Orca Pascal at the moment, but I
mostly work
AFL Dyfet in C :)...
AFL Dyfet As to the upgrade cost, I do not recall...I would suggest
contacting TML
AFL Dyfet directly unless somebody here knows off hand...
AFL Marty TML II upgrade price was originally about 50 bucks. Don't know if
it's
AFL Marty different now though. GA
AFL Dyfet Okay, I believe A2 has the floor now...GA A2...
A2GS I wrote and assembled a program in merlin 16+ running under GS/OS
5.0, gave it
A2GS to a friend who had a merlin running under 4.0 and when he tried
to run the
JSchober ("Matt DTS GS/OS 3.0. System 5.0.")
A2GS program it crashed almost immidiately after it started
executing....
A2GS The program works fine under 3.0 (Matt :)
A2GS Any ideas?
A2GS BTW the program crashes after loading a an uncompressed pic file
directly into
A2GS screen memory, before even closing the file.
A2GS GA
AFL Dyfet GA Cecil
CecilFret A2GS, you talking about the article in the winter quarterly of
CecilFret Call A.P.P.L.E.
CecilFret ga
A2GS <-- will look it up, thanx
AFL Dyfet GA Parik...
AFA Parik 5.0 tries not to touch shadowed ram ($01/2000). 4.0 does a lot.
may be it.ga
AFL Dyfet GA Ron...
RonLichty I was going to suggest the same thing Parik did...
RonLichty If the screen being written to
RonLichty is the shadowed screen, then
RonLichty System 4.0 may load your program there. On the other hand,
RonLichty System 5.0 never does that unless all other memory is full.
RonLichty You should incorporate a call to the Memory Manager asking to
RonLichty reserve that memory, and use a dialog to quit gracefully.
RonLichty ga
AFL Dyfet GA Dave...
Dave Lyons A2GS, is your program using any parts of the toolbox? It is
*allocating* the screen memory
Dave Lyons before using it? (Starting up QuickDraw allocates the $E1
super-hires screen for you, and it may
Dave Lyons also allocate the $01 memory *if* you ask it to, under 5.0 and
later only.) ga
A2GS Loads the program directly into E1/2000, I don't have to allocate
memory for
A2GS that area.
A2GS Even though, technically ,I should.
Dave Lyons More than technically...if memory is tight, other stuff can get
put there.
AFL Dyfet This is true...
AFL Dyfet I have seen that happen before...
Dave Lyons I'm out of ideas w/o seeing the code. ga
AFL Dyfet Okay, any further comments?
A2GS The very first thing the porgram does is just load the pic
file....can't get
A2GS much more straightforward then that, as programs go.
AFA Gary J Put in $E1 as opposed to $01??
A2GS Nope, don't want to use shadowing.
Dave Lyons Is this in
Dave Lyons assembly? Are you setting the B register?
A2GS yes, no
Dave Lyons So it's using long addressing when
Dave Lyons it copies the reference number from the Open block to the Read and
Close blocks, then?
A2GS I'm using GS/OS calls, and when the ask for the destination
address in the
A2GS GS/OS call table, I just put e1/2000
Dave Lyons Right, but at some point you have to load the resulting reference
number
A2GS Never reaches the close call!
A2GS right....
A2GS right after I open the file.
Dave Lyons from the Open call, and store it somewhere else. If you're not
setting B, you need to be using
Dave Lyons long addressing for those loads and stores.
A2GS I get the ref # and store it in the apporpriate locations for the
other call
A2GS tables.
Scapino If you are loading the full 32768 bytes, the are some bytes
between he SCBs
Dave Lyons Can you send me a copy of the program?
AFL Dyfet Or if you are working from the same segment, a simple PHK and PLB
combo will
A2GS I enter the routine with a PHK,PLB
AFL Dyfet set you to the current bank :)...
Scapino and the Pallets that the system might be using.
JSchober Oh, you ARE setting B...
Dave Lyons (Ah! Then the correct answer was "yes, yes" above.)
AFL Dyfet Okay, you do that already...
A2GS No, not really I'm just REsetting B
A2GS :)
AFL Dyfet I couldn't speculate either unless I saw the code then...
A2GS What does long addressing have to do with this?? The GS/OS calls
are doing all
A2GS the work...and they are loading the file! Just not closing it,
instead thre
Dave Lyons Never mind re: the long addressing...thought you said you
*weren't* setting it with the PHK PLB.
A2GS system crashes.
Dave Lyons If it wasn't set, you *could* be loading and storing stuff in bad
banks, overwriting something
Dave Lyons important.
AFL Dyfet Perhaps this question should be carried to the message area for
further
AFL Dyfet discussion...
A2GS Why?? The GS/OS call tables require long addresses for all the
info, ex.
A2GS dest. address for data.
AFL Dyfet GA Parik...
AFA Parik (run it through GSBug. Thats what its for. :)
A2GS If I had it.....
A2GS :)
AFL Dyfet I think we've ran out of the well of ideas for the moment on that
one :)...I
AFL Dyfet would like to give Woods a chance for his question now...GA
Woods...
AWoods Has anyone heard plans of a C++ preprocessor/complier for the GS?
Thanks.
AFL Dyfet Unfortunately no, I haven't heard of one, myself...GA Dave...
Dave Lyons Nope, not specifically. I've heard that you can
Dave Lyons use the preprocessor (well, really a compiler from C++ into C)
part of MPW C++ (on the Mac)
Dave Lyons to create C code that you then run through APW C. Last I heard,
you *do* have to make some
Dave Lyons changes to the resulting C to make it work. Oops--shoulda said
APW C *or* MPW IIgs C. ga
AFL Dyfet If you have time to spare, you could also try porting (Gnu)
G++...
AFL Dyfet Okay, I believe Cappy is next...GA Cappy...
AWoods Thanks.
Cappy OK, q#1: What is the difference between TML II and TML?
..and...
Cappy What is the best C comiler for the GS for a beginning C student,
such as
Cappy myself?
AFL Dyfet GA Joe...
JSchober Lots. TML (I) is an old, buggy version of Pascal that runs under
ProDOS 16...
JSchober TML II is a NEW, buggy version (hey, we can't tolerate OLD bugs!)
that supports
A2GS :)
AFL Marty ROTFL
JSchober System 5.0, including resources, etc. (2) I like ORCA/C myself
-- it's quite
Cappy (no.. buggy is Music Studio)
JSchober a bit better than APW C, although ORCA has some problems itself.
{S GA}
AFL Dyfet For educational purposes, Orca C makes more sense, in that it is
ANSI
AFL Dyfet compatible, which is where all C compilers are going...
Cappy Thanks. That's it. (ist year of Pascal and C.)
Cappy Oh, is there any UNIX for the IIgs?
AFL Dyfet GA Cecil...
CecilFret ok, I too like ORCA/C. Mainly because of its speed of
compiling.
CecilFret There is a new release of ORCA/c coming out soon like the end of
themonth
CecilFret I am sure many bugs will clear up. Don't blame all problems on
ORCA/////c
CecilFret The ORCA shell itself has some problems losing memory management.
to
CecilFret Avoid this, I quit out and come back in.
CecilFret Speaking for porting, I started the Lichty conversion to C using
APW.
CecilFret At the time, ORCA/C was not available. When I got done with APW C
and
CecilFret started on the ORCA/C version, I had very little problems, really
none.
CecilFret I am also working with C on an IBM PC AT. TURBOC to be exact.
CecilFret the only problems I have had in porting is things like getting the
time
CecilFret and some printer control problems
CecilFret ga
AFL Dyfet I've used Mircosloth C on PC's myself :)...and have also done some
cross
AFL Dyfet porting from/to MS-DOS...Orca/C has proven fairly standard, though
a little
AFL Dyfet light on some of the standard libraries...GA Cecil...
Cappy The only question I had left is if there is any UNIX shells
available on the GS
CecilFret The problem with the printer is opening it as a stream. I have a
cross
CecilFret reference program to tell me where all variables and procedures
are used.
CecilFret I have to have hard copy so for APW C I had to use REDIRECT. On
the
CecilFret B9 version of ORCA C I got a stream to work, sora.
CecilFret ga
CecilFret (sorta)
AFL Dyfet I think A2 wants to comment :)
AFL Dyfet GA A2...
A2GS Nope...There is no Unix Shell for any II (to my knowledge) for
several reasons
A2GS most of which could be overcome in the GS, unfortunately no one
has spent or
A2GS has the time to do it.
BillP thank god
A2GS GA
AFL Dyfet Not strickly true, A2...There is the C-shell like environment for
Aztec C for
AFL Dyfet the Apple II, though, of course, it doesn't multi-task...:)
BillP oops sorry
A2GS Unix
Dave Lyons Don't forget Davex (I think it qualifies as "unix-like").
Shareware for $25 from me. ga
A2GS Why should it's 8-bit limitation slow anyone down? :)
AFL Dyfet :)
Tamira bit of a self plug isn't it???
Dave Lyons (Sure...is there a law against self-plugs? :)
Tamira <NOPE :)>
CecilFret (Nope, I did one earlier)
AFL Dyfet (Oh, and did I mention Command.COM tonight?? :)
Dave Lyons (That's MS-DOS-like....)
AFL Dyfet Okay, I think we can get to AWoods question now...GA AWoods, you
have the floor
AFL Dyfet .
AWoods Thanks...there were a couple of people on info.apple
(comp.sys.apple)
AWoods that were planning on a Unix for GS...but havn't heard from them
lately. Done.
JSchober "IInix", yeah.
JSchober (can I mention EBBS while there's a lull in the discussion?? :D
)
AFL Dyfet (Well, it's got an ls command and a cat, Dave... :)
Dave Lyons (Oh, all right.... :)
CecilFret In my opinion, the IIgs does not have enough gas for UNIX.
CecilFret FOR myself, under ORCA/C and APW C, I have an alias for the major
MS-DOS
CecilFret commands. I work withPC all day so get tired of syntax errors at
home.
CecilFret I also just got a MAC so the PC is almost out of my life (Thank
God.)
CecilFret ga
AFL Dyfet Perhaps not for Unix AT&T style (System 5.x), which now requires 1
meg of core
AFL Dyfet for the 'kernal', but for a sane, well developed time-sharing
system...hmm...