America Online APPLE II DEVELOPMENT FORUM CONFERENCE LOG Tuesday, August 25, 1992 10:00 p.m. Eastern Time Topic: Toolbox Programming Forum Leader: Gary Jacobson (AFL GaryJ) AFL GaryJ Welcome to the Apple II Development Forum!!!! AFL GaryJ We're glad you could all attend this evening! AFL GaryJ Tonight's topic (should you decide to accept it) is Apple IIGS AFL GaryJ Toolbox Programming!! AFL GaryJ Has anyone been working on any nifty programs over the summer? Jim Murphy Yup. Yup. DanP18 porting unix stuff, making a program to read ISO9660 disks, etc. AFL GaryJ Did you solve that problem, Dan? DanP18 with the FST? no. AFL GaryJ Well, by the way everyone feels tonight, I'd almost would guess that AFL GaryJ school has started? :) AFA Jay Ew, not for two weeks :) AFL Marty ewww AFL GaryJ Two weeks? Lucky :) AFL GaryJ My kids start on Monday. AFC DYAJim not for one week AFC SteveB That word is a violation of Terms Of Service. Please use keyword TOS. AFC SteveB :) AFL GaryJ I won't use the sch**l word any more. AFA Jay I can't believe summer is over ALREADY AFC DYAJim yeah AFL GaryJ Me too. (hard to believe) AFA Jay I wasted another summer, oh well :) AFL GaryJ Wasted? AFL Marty You're in good company, Jay. AFA Jay I was just looking at a college application and they ask, AFA Jay "Have you had a summer job for the past two summers, if not, what did you do?" AFA Jay my answer will be "slept" ;) AFC DYAJim lol Jay.. AFL Marty That's what I did. AFL GaryJ Jay :) AFL GaryJ "If not, what did you do?" Getting a little personal, aren't they? AFA Jay They want things like, "I spent my past two summers in Guam saving endangered AFA Jay mosquitos" AFA Andy LOL!!!!!! Jay :D AFL GaryJ I'm sure Dave has been working on "nifty" programs over the summer :) AFC SteveB Got a question, and it's on topic, too! :) AFA Jay WOAH :) AFL GaryJ Go for it, Steve!! AFC SteveB Ok, I posted this in 'dem boards but so far no answer. AFC SteveB My problem is that DoModalWindow is doing everything it's AFC SteveB supposed to, 'cept draw the alert frame. It won't do that AFC SteveB until it gets obscured by something else. AFC SteveB My window frame bits are 80A5... AFC SteveB And I've done this with another program, and DoModalWindow AFC SteveB worked fine...but I didn't have a list in the window in the AFC SteveB first program. Dave Lyons Well, since it draws once it's obscured, it sounds like everything is set up right (I guess your Dave Lyons window has a title bar & you also set fFlex to tell DoModalWindow you want an interior Alert frame), Dave Lyons so there must be something going on *before* the first time you let DoModalWindow update your Dave Lyons window. -- For example, are you drawing your window yourself once & using ValidRect, or something like Dave Lyons that? AFC SteveB I do a _SelectMember2...that's about the only thing AFC SteveB that would affect the window directly. Matt DTS You create the window and pass it to DoModalWindow, so I'm guessing you create it visible and... Matt DTS ...maybe let it update or something before calling DoModalWindow. If you update it before you call Matt DTS DoModalWindow the first time, it can't draw the alert frame for you. (GA) AFC SteveB I'm doing no updating before I go into the DoModalWindow loop. AFC SteveB ('cept for _SelectMember2) Dave Lyons Does your window have a wContDraw routine? (It probably should not.) AFC SteveB Nope Dave. AFC SteveB If I do a _mwStdDrawProc right before I enter the DoModalWindow AFC SteveB loop, then the alert frame draws on the DoModalWindow call... AFC SteveB But the _mwStdDrawProc only drew the controls. Dave Lyons Uh...it should actually draw during the _MWStdDrawProc. That's strange. Dave Lyons I'll take a look at how MWStdDrawProc works & IM you...ga Matt DTS Tell us all when you figure it out, Dave. Dave Lyons Steve, your frame bits are really $80A5?? I finally Dave Lyons looked that up, and the fFlex bit is $0200. -- When your window has a title bar, you're supposed to Dave Lyons have to set fFlex to get DoModalWindow/MWStdDrawProc to draw an interior Dave Lyons alert frame for you, so I don't see why you're getting one at all. AFC SteveB Ack, I meant 0x8085 :) Dave Lyons Okay, same difference--you're creating it invisible (that's the $0020 bit). Still no fFlex. Dave Lyons I bet if you try $8285 it'll work, but Dave Lyons then I don't know why it's ever drawing one. Matt DTS Your window record is in locked memory, isn't it? AFC SteveB I think I tried setting that per the Byteworks book... AFC SteveB Matt, it's static data. Matt DTS What does that mean? Dave Lyons Matt, window *records* are created Fixed by the system. AFC SteveB Err, the definition is I mean. But why should I have to AFC SteveB worry about the window record? Shouldn't the WM be doing that AFC SteveB stuff for me? Matt DTS As long as you let the system create them, true. Just wondering. Dave Lyons Well...try $8285, and I'll look for a reason that it could draw one without fFlex. Matt DTS Steve, also look with Nifty List _at the times_ and make sure no one's changed your frame bits. (GA) AFC SteveB Matt, I've done that and it was 8085...I also did that AFC SteveB with several other extensions that also use DoModalWindow... AFC SteveB And all their frame bits were 80A5. AFC SteveB (This was right before the DoModalWindow call was to be executed) Dave Lyons Dang, now I'm confused...just browsed through MWStdDrawProc (object) in Nifty List, and it Dave Lyons looks like fFlex is working the way it *seems* to be working for you, not the way it's documented. AFC SteveB Bug? :) AFC SteveB Err...undocumented feature. Dave Lyons Yeah, or misdocumented. But I still dunno what's going weird for you compared to your other working Dave Lyons DoModalWindows. Dave Lyons Steve, if you can send me your object code I'll play with it. ga AFC SteveB Let me go play with that fFlex bit, and I'll shrink it your way. Thanks! ga AFL GaryJ Thanks again, Dave and even Matt! AFL GaryJ Let's see.... AFL GaryJ Mike Westerfield has confirmed for two weeks from tonight, to talk AFL GaryJ about his ORCA/Debugger, and other product stuff he has coming out. AFL GaryJ That'll be September 8th. Matt DTS While I was AFK ... Matt DTS I went back to the original documentation, the DTS Tools and Libraries document, written by an author Matt DTS of impeccable trustworthiness. Matt DTS This document says that fakeModalDialog (the heart of DoModalWindow) draws an interior alert frame... Matt DTS ...if fAlert is _not_ set, unless you set fFlex. Programmer's Reference seems to have this backward. Matt DTS In other words, you get an interior alert frame by default unless you override it by setting fFlex. Matt DTS That doesn't explain all of Steve's problems, but it does explain the confusion. GA. Dave Lyons (Yup. And it even matches the object code!) AFL GaryJ Hmmm... I guess Steve isn't even here to see the clear up of confusion. AFA Jay He went to play with the bits and then to send Dave some object code :) AFL GaryJ That's right. GNO Jawaid Actually, I have a question, but it's more of a "I wonder..." AFL GaryJ GA, Jawaid. (This is also ask mister wizard night) GNO Jawaid Heh :-) Does anyone here have any experience with MacApp, and is it really GNO Jawaid *really* useful? ga AFL GaryJ MacApp? AFL GaryJ MacApp?? Matt DTS You'd get a better answer in the MDV conference happening right now, Jawaid. AFL GaryJ :) AFL GaryJ (Are Macs really usful?) GNO Jawaid Oh? Oh! Okay. I'm just wondering, since C++ on the IIgs is in the GNO Jawaid foreseeable future if it would be worth the investment to do something GNO Jawaid like that. Matt DTS MacApp took years of engineering work from a team of folks at Apple, and it wouldn't be easy to port Matt DTS to another platform. That's why Apple and Symantec are cooperating on a new cross-platform object- Matt DTS oriented application framework/class library called "Bedrock." Matt DTS (Gosh, lots of buzzwords in one sentence there.) GNO Jawaid I read about that in Byte, almost word for word I think :-) AFL GaryJ Matt probably wrote the article. GNO Jawaid Another question: does anything at Apple _not_ take years of engineering GNO Jawaid work from teams at Apple? :-) Matt DTS Yeah. They could have done GNO in about 3 hours. Matt DTS Spottysoft ooooooooh..... :D GNO Jawaid With the toolbox and GS/OS sources, so could I. :-P GNO Jawaid (Note: I do not intend to take SteveB's place as Matt punching bag tonite :) Matt DTS MacApp takes about 20 MB of hard disk space for all the source code and objects, and takes a long time Matt DTS to build (a few hours on a Quadra, I think). GNO Jawaid Okay, that makes sense (that source is provided, so one can make changes). GNO Jawaid Yow, that's big. But presumably it does everything under the sun... I'm GNO Jawaid thinking more along the lines of a general "Take care of the tool mess" tool. Matt DTS Not everything -- it's a fairly complete application framework, but object-oriented always Matt DTS adds bulk to a program. Matt DTS But, again, this is better fodder for an MDV conference. Maybe they're still at 11 PM EDT; I thought Matt DTS they had moved them up to 10 PM opposite the ADV conferences. AFC DYAJim does writing to shadow memory only speed up reads, or both reads and writes? AFC DYAJim (I'm too lazy to look it up in the HW ref :) GNO Jawaid Jim- only reads. AFC DYAJim (and does MVN get faster if you use it on shadow memory?) AFC DYAJim (or is it always 7 cycles/byte?) AFL GaryJ As opposed to what, Jim? GNO Jawaid Sure, but the cycles are faster for the reads, I guess. AFC DYAJim So does it make it better than 7 cycles/byte, or does not using shadowing AFC DYAJim make it worse than 7 cycles/byte? GNO Jawaid It's always 7 cycles per byte. What shadowing changes is whether you access GNO Jawaid the memory at 2.8MHz (or above) or at 1MHz. AFC DYAJim But if you had shadowing, wouldn't it make MVN access the memory faster, and AFC DYAJim thus be <7 cycles/byte? GNO Jawaid Jim- no, the processor still does 7 effective cycles, but some of those GNO Jawaid cycles are at the fast speed, i.e. any reads from shadow memory are faster, GNO Jawaid whether LDA or MVN. AFA Jay Jim, a cycle speed changes with the MHz speed. AFC DYAJim oh, okay :) AFC DYAJim so it does help :), but just not in cycle counts AFC DYAJim (just making sure :) GNO Jawaid Right. AFL GaryJ But cycles per instruction is a constant (within the parameters of the microprocessor) M Wolfgram 7 cycles is 7 cycles... with a zip those are faster than a stock cycle (like a harley and a schwinn :) AFL GaryJ But it's still 7 cycles. AFC DYAJim yes, I don't know why I couldn't understand that earlier tonight as I have AFC DYAJim understood it nights before tonight :) something about tonight.. i'll shutup:)