America Online APPLE II DEVELOPMENT FORUM CONFERENCE LOG Tuesday, May 29, 1990 10:00 p.m. eastern time Topic: Open Discussion Forum Leader: Gary Jacobson (AFA Gary J) Coach101 Dave, have you ever tried debugging an AppleTalk completion routine Dave Lyons Coach, Yeah, I actually have...not very fun or productive, though. GSBug Dave Lyons doesn't appreciate the stack being in page 1 or even being inside an interrupt, I think. Coach101 with GsBug (init version)? Its real sport! AFL Scott Anyone... have you tried to make a program designed for single segment use AFL Scott into a mulit-segment program? Pain the butt. AFL Scott With Merlin, that is. Coach101 Scott, no, but if there are a lot of references depending on the B/K Coach101 registers, I would not care to try the operation! AFA Gary J I have with ORCA, Scott. AFL Scott With Orca it's a dream, but with Merlin... YUCKO. AFL Scott Coach, you got it, dude!:) AFL Scott I'm converting it now by hand to Orca. Coach101 I sure hope that code was W-E-L-L commented!!!! AFL Scott It wasn't. :( BIG :(( AFA Gary J Ok, it's about time to start. AFA Gary J Welcome to the Apple II Development Forum conference. Tonight is an open AFA Gary J topic, so feel free to discuss anything you'd like. Function has a question AFA Gary J on the floor at the moment... Function Does anyone know anything about the IIgs Console Driver? Dave Lyons Function, I'm moderately familiary with it...what's your question? Function Well I need to know how to use and load it. Dave Lyons Function, the console driver is loaded automatically when you boot GS/OS. Function Well how do I write stuff to the screen using it? Dave Lyons Function, do you have any GS/OS reference material? There's at least a chapter on the Dave Lyons Console Driver. Function No, I don't have the GS/OS Reference material. Dave Lyons You'll want the GS/OS Reference as soon as it comes out (the current APDA draft will do if you need Dave Lyons it fast). Coach101 Function, can you open, read, and write files? Function How much do the latest GS/OS refs cost? Are they still beta? Function I'm not an APDA member does that matter? Matt DTS The only GS/OS references available at this point are the pre 5.0 ones. We expect to have an Addison- Matt DTS Wesley 5.0 GS/OS Reference later this year, and partners can get the information they need from DTS Matt DTS in the meantime. GA. AFA Gary J Ok, let's move on to the next question. GA Mike. Nuzz I'd like to know what the proceedure is on using a Line Edit Control without Nuzz Taskmaster. Nuzz I can create it, display it, but can't get the idle, or insertion AFA Gary J GA, Dave Dave Lyons (1) Why don't you want to use TaskMaster? and Dave Lyons (2) You pretty much do the same stuff that TaskMaster would do if you were Dave Lyons using it. That is, on a mouseDown you call Dave Lyons FindControl and TrackControl; on a keyDown you call SendEventToCtl, etc. ga Nuzz That's where I'm confused. Dave Lyons What it? I'm confused. Nuzz Do I call SendEvent after the TrackControl Dave Lyons No, SendEventToCtl should only be needed if Dave Lyons you get a keypress, I believe. Nuzz So I should call SendEventToctl then TrackControl Nuzz Both after FindControl Dave Lyons TrackControl is only for mouseDown events. Dave Lyons So SendEventToCtl is what you want for a keypress while the LE control is the Target control, Dave Lyons regardless of where the mouse is (FindControl not necessary). Dave Lyons Hmmm...Matt says you have to call SendEventToCtl to send Null events to the target control Matt DTS The pseudo-code for TaskMaster in TB Ref volume 3 is useful in these instances, methinks. Nuzz OK, do I send another SendEvent to keep the Insertion blinking Dave Lyons if you want the insertion point to blink. Sounds reasonable. Nuzz OK, I think I gotit. Thanks, GA Dave Lyons (So SendEventToCtl for TargetOnly on a null event.) ga AFA Gary J Ok, let's move on to Doctor Why's question. GA, Doc. Doctor Why I'm loading in a 'resourced' cursor in an ORCA/Pascal program. It displays Doctor Why okay, but when I move it I notice that there are narrow columns where the Doctor Why cursor appears as junk. I am guessing that these columns are about every 8 Doctor Why pixels. Any thoughts? AFA Gary J Could be your mask pointer is messed up, but I don't really know. AFA Gary J GA, Dave Dave Lyons The mask is a good possibility. Make sure you have an extra word of width on each row. If Dave Lyons it's still messed up & you're reasonably sure you aren't trashing RAM at random, send me your Dave Lyons cursor & I'll see if it happens here too. ga Doctor Why Okay, Thanks AFA Gary J For those who have come in later this evening, tonight is an open topic night, AFA Gary J so feel free to ask any questions. We are using protocol. Seaspider I keep loosing tool 31 and 32 any ideas? Thank you.. AFA Gary J Ok, Seaspider snuck a question in there. Could you ask your question again, AFA Gary J please? Seaspider Thanks Gary, I keep loosing tool 31 & 32 any ideas? Seaspider (system tools) AFA Gary J Loosing? You mean they're not there when you try to load them? AFA Gary J GA, Matt Matt DTS It would be really hard to lose tool 31 as there is no tool 31 as part of the system. AFA Gary J :) Matt DTS Tool 32 is the MIDI Tools (are?), and they are not installed with the "Latest System Software" Matt DTS installer script. You have to select either "Apple MIDI" or "Card 6850 MIDI" to get them. GA. Seaspider Hummm, I have had to put them back in several times. One tool is for games.. Seaspider Eg.. Couldn't play Carman San Diego until I put the tools back... Matt DTS It sounds like the program uses system tool set numbers when it shouldn't. Sorry. GA. Seaspider Ok thanks Matt. AFA Gary J Ok, any other questions this evening? AFA Gary J GA, Scott AFL Scott Dumb question... as usual... whats wrong with this instruction... AFL Scott lda $00FE,y? Coach101 Nothing AFL Scott APW and Orca barf on it. Illegal operand. Matt DTS Try lda |$FE,y Matt DTS $FE by itself would be a direct page address, and there probably isn't a DP,y addressing mode. Dave Lyons (Not for LDA, anyway.) AFA Gary J That should work, I would think (lda |$FE,y) AFL Scott There isn't, Matt. Will do it... Merlin doesn't barf on it, though... The AFL Scott disassembly listing by both the Rom, dumpobj, and NL like it, too. Odd. AFL Scott Done. Just an observation. AFA Gary J The assembly will drop the leading zero's Coach101 KLUDGE EQU $0093 LDA KLUDGE,Y Will also work :) AFA Gary J At least in APW or ORCA. Merlin will treat it different. AFL Scott Nope Coach... that doesn't work. AFA Gary J GA, Dave Dave Lyons If you're looking for a possible reason, it could be that APW/ORCA is trying to help Dave Lyons you: if you *wanted* direct-page indexed (which you would get if it existed for LDA), and it Dave Lyons just used absolute-indexed instead, your program wouldn't work right. It looks like it's making Dave Lyons sure you wanted what you're getting. ga AFA Gary J GA, Coach Coach101 Very inconsistent on ORCA/APW's part because...... Coach101 KLUDGE EQU $0093 LDA [KLUDGE],Y .... Coach101 will get you an Illegal Operand Error... I get lots of those :) ga AFL Scott It's a level 8 error and the code produced looked ok.. just an odd error I AFL Scott guess. AFL Scott That works.. but this is for a fast screen update routine, so that doesn't AFL Scott help.. But thanks.:) AFA Gary J Allright, our next question is from VICTORYSFT. GA, VIC VICTORYSFT The latest GSOS.h for APWC uses #defines to change prodos 8 recs to GSOS recs. VICTORYSFT Although I never use prodos 8 recs, I've just deleted them from GSOS.h so that VICTORYSFT the ORCA/C compiler accepts it. VICTORYSFT Just to be on the safe side, however, I would like to keep in the #defines. VICTORYSFT I guess I could accomplish the same effect with typedefs, but does anybody know VICTORYSFT a method of fixing GSOS.h using #defines? AFA Gary J GA, Matt Matt DTS You've got the background a little muddled. Matt DTS They're not P8 records, they're ProDOS 16 records. They're done that way so that if you include Matt DTS GSOS.h and not P16.h (or whatever), you don't have to append GS to all the call names to get class Matt DTS one GS/OS calls. If you include both, the conditional pre-processor macros define all the Matt DTS class one calls as "callnameGS" so you can make both class zero and class one calls. Matt DTS I don't have an answer to your problem, but that's why it happens. GA. VICTORYSFT I understand why its happening, but is there a fix? AFA Gary J GA, Coach Coach101 If you #include both the old ProDos .h file and the new GSOS.h file, Coach101 then you could have a problem... I use the GSOS.h file a lot, and have Coach101 not had the problem you are experiencing (not with the latest GSOS.h)... VICTORYSFT I never use prodos.h, but the init files I use had it. Coach101 Are you #include both headers, if so, drop the ProDos one... ga VICTORYSFT I would still like the automatic conversion to GS recs from p16. Coach101 Ok, bite the bullet and get rid of all usage of prodos.h Coach101 done AFA Gary J Thanks, Coach, Matt. AFA Gary J Anymore questions this evening? VICTORYSFT Anybody know why gsos.h uses #defines for this purpose? Coach101 I dont Matt DTS (don't wait for me; I don't know the background on that particular case) VICTORYSFT ok, thanks. GA AFA Gary J (I'm not, Matt :) AFA Gary J Is anyone writing programs out there? (why all the silence :) AFL Scott I am. But don't really have any problems except for converting from Merlin AFL Scott to Orca. But then that's all by hand.:) AFA Gary J Isn't there a conversion program for some of that stuff, Scott? AFL Scott Yeah, but they blow away labels.. labels are essential in this code (that's AFL Scott rather poorly commented). AFA Gary J Labels are the ONLY comments, eh? :) AFL Scott In a lot of places, yeah... :( AFL Scott Plugging my stuff in has proved to be fun. Mac Hater (oh, does the scsi upgrade [gs/os v3.02] fix the problem with SFTools and Mac Hater duplicate filenames?) Matt DTS No. That's a resource manager problem, and there is no resource manager upgrade included. Coach101 I need an opinion on a rather involved issue.... AFA Gary J Ok, Coach, what's your issue? Coach101 Internet addresses (of TCP/IP fame) use addresses that are 32 bits in length. Coach101 On the network, all bytes are in big endian order (i.e., the opposite of Coach101 IIgs order). Now most of the time one thinks of an IP address as d1.d2.d3.d4 Coach101 where each d is one of the bytes of the 32 bits. On a TCP/IP implementaion Coach101 for the IIgs should one keep an internet address in inverse order (as a long) Coach101 or should I keep it in big endian order (sort of like char[4]). It really Coach101 does not make a technical difference of any magnitude, but every day I change Coach101 my mind on which is "more correct". Does anyone have an opinion? ga AFA Gary J GA, Scott AFL Scott As long as it doesn't affect the masking of the address any and communication AFL Scott is still possible with other nodes, then just comment the way you store the AFL Scott address. AFL Scott done. AFA Gary J (I think it wouldn't matter as long as you documented whatever you chose) VICTORYSFT I'd go with MSB first, in case you ever decided to port to another system. GA VICTORYSFT (long rather than char) Coach101 But it is a user inteface issue... Does a using programmer (one who calls Coach101 the device driver) care? Porting, sort of out of the question for a Coach101 IIgs device driver :) AFA Gary J GA, Scott AFL Scott Then if it's an established standard, stick with it. It might make a nodes AFL Scott heard entry and netaddr easier for the programmer of those things. AFL Scott done. AFA Gary J GA, VICTORYSFT VICTORYSFT If you're also including the programmer's interface (C routines, etc), then I VICTORYSFT think that most C people would prefer a long to an array of ints. VICTORYSFT In this case, keeping portability in mind would make sense. :) VICTORYSFT GA VICTORYSFT (array of char, I meant) Coach101 Ok, thanks for the input..... I can will mull it all over.... Coach101 ga AFA Gary J Any other questions this evening? AFA Gary J GA, Scott AFL Scott Coach... are you trying to do what I think you're trying to do? AFL Scott If so... go for it!:) Coach101 I am probably DOING what you think I am doing..... IP communications between Coach101 two cooperating IIgs's should occur this evening..... Had to break Coach101 the debugging session to attend... ga Mac Hater layman terms? :) Tamira IP?? AFA Gary J (protocol off) Mac Hater quick, we need a coach translator. AFL Scott Sounds great! Will you try to do it with live nets (ie, non-GS/GS)? Coach101 Scott, yes.... The design goal is complete compatibility with the MacTCP Coach101 implemention (which really means KIP compatibility). So if you have a Coach101 DDP/IP gateway (e.g. Kinetics FastPath), then you can get from LocalTalk Coach101 to EtherNet. From EtherNet, you can get where ever in the US you wish... ga AFL Scott That's splendid, Coach! Something like that is really needed. What do you AFL Scott think the speed will be? Coach101 That is the BIG Q.... Hopefully I will have some answer shortly... Coach101 It is all in assembler, and I have tried to pay attention to the code Coach101 that is in "tight" places so I hope to be in the neighborhood of a Mac+ Coach101 TCP/IP is a very popular Local Area Networking standard. Just about Coach101 any workstaion you buy will have a TCP/IP implementation with, or available, Coach101 for it. Additionally, there is a national network (the InterNet) that runs Coach101 on TCP/IP. Have TCP/IP, and a gateway to the world, would allow a IIgs Coach101 to do, and interact with, lots of things... done AFL Scott Keep us posted! This is really exciting!:) Are you including sockets, too? Dave Lyons (Very cool!) Mac Hater would you need something like appleshare or just a modumb? Coach101 Now you know why the flurry of DTS questions Dave :) Matt DTS Well, we just naturally assumed you were doing something way cool or we would have given you Matt DTS bogus answers. :) Dave Lyons (Actually I think he pretty much told us what he was doing anyway.) Matt DTS "Sure...go ahead and disable interrupts permanently. Why would AppleTalk mind?" Coach101 I will be back with more detailed "scheduling" questions Matt :) AFA Gary J :) Matt DTS AFL Scott New hardwar... I can see it now!:) Coach101 ARe you sure Matt, sounded familiar to me :) AFA Gary J :) AFL Scott Matt... and you wondered about 19.2 k baud modems!:) LOL!:) AFL Scott Coach.... how are you controlling the address of the node? Just a question. Coach101 Via a CDev Scott. Eventually you will get two options Coach101 1) Pick your address 2) if you have a DDP/IP gateway supporting KIP Coach101 then you can have the DDP/IP gateway dynamically assign an address for Coach101 you... Coach101 I am still chasing one that looks like it is headed for a 2300 posting Coach101 to AIIDTS... Fireing off an Nbp LookUp from AppleTalk timer completion Coach101 routine is giving me a bit of a problem (returns $8888 in A, but ResultCode Coach101 looks like it is virgin {I preset it to $00FF}). If I dont find it in my Coach101 code this evening you will get it in the morning :) AFL Scott Scary thought... news on a GS... direct from uunet... Newsreaders for the GS.. AFL Scott Coach... really neat possibilities there. AFL Scott Super large hard disks... people flipping out when they see their drives AFL Scott accessing for no reason that they know about... Great!!!! AFL Scott Coach, seriously.. I wish you the best!