America Online APPLE II DEVELOPMENT FORUM CONFERENCE LOG November 7, 1989 10:00 pm eastern time Topic: Open Discussion (IIGS Toolbox Call Macros) Forum Leader: Dave Sugar (AFL Dyfet) Astronewt Any Merlin programmers here? AFL Dyfet Merlin programmers? I have used Merlin a lot in the past myself :)...Did you AFL Dyfet have any specific questions? Astronewt Yes, for Merlin 16+ AFL Dyfet What could we try to help you with? Astronewt The skeleton program included with the samples- Astronewt Sometimes tools are prefixed with a ~ vs. an underline. Astronewt I can't get the "super macros" to convert to normal types, etc. Astronewt Hello? AFL Dyfet Okay...as to Merlin 16, I have tended to construct and use my own macros for AFL Dyfet tool calls :), so I haven't played around much with the Skeleton or sample AFL Dyfet source/macros that come with the package. Dave Lyons Oops--I wasn't paying attention there for a minute--I know the difference Astronewt Hmm- have you used any "super macros?" Dave Lyons between the "_" macros and the "~" macros: the "_" versions are just Plain toolbox Dave Lyons calls (i.e., just LDX #abcd, JSL $E10000), while the "~" macros actually take Dave Lyons parameters for all the things that need to be pushed onto the stack to make the call (and Dave Lyons they push the result space for you, too). Astronewt The dox said that the names were the same, just no push and pull. AFA Gary J That's true, but you still have to supply the parameters Astronewt But I can't make the names work both ways, in particular, "NoteAlert." Dave Lyons For example, you could do a GetNewID as either PHA, PEA $1000, _GetNewID, PLA, or as Dave Lyons ~GetNewID #$1000, PLA (I hope that's right, w/ the "#" and all). Astronewt The parameters were supplied in the sample, but I wanted to try the plain Astronewt I think they use semicolons vs. commas in the parameter list. Dave Lyons (dangit...stupid command-key commands...) Astronewt When I try the plain version, I get an unrecognized opcode error. Dave Lyons Hmmm...are you including the right macro definition files? AFL Dyfet You mean the macro name WITHOUT a lead '_' or '~'? Astronewt Oh, I used the leading underscore, but maybe it's the definition files. AFL Dyfet Okay, because all the macros are defined with the lead '_'...unlike APW, Merlin AFL Dyfet Macros can be named more freely, however :)...but the '_' is certainly part of AFL Dyfet the name, and not an option :) Dave Lyons Hmmm...looks like both the "_" and "~" versions are in the same file after all. Astronewt So they claim. AFL Dyfet In other words, you would have macros defined seperately for "_" and "~" items, Dave Lyons So they claim? I just looked at part of the file, and they're both in there. Can you give me AFL Dyfet and not the same macro being controlled by a lead character. Dave Lyons an example of an actual macro you haven't been able to use? I can see if it's there. Astronewt Ok, I tried _NoteAlert with the pulls and pushes, and got a bad opcode. Matt DTS What was the exact line you typed, Newt? AFA Gary J ....(including the pulls and pushes) Astronewt It choked on _NoteAlert, by itself as a plain tool on a line. Coach101 How amny spaces to the left of _NoteAlert were there? Astronewt Lots, since it was by itself. AFL Dyfet Well, if it came up with 'bad opcode', it was probably in the correct field :). AFL Dyfet Sounds like there is no macro definition in the include for '_NoteAlert'... Astronewt Indeed. The usage is on page 4 of the "8/16" supplement. Matt DTS Newt, the best thing you can do at this point... Matt DTS ...is reassemble your code with the listing option turned ON... AFA Gary J According to the 8/16 manual, a "BAD OPCODE" error can occur when the opcode Matt DTS ...and see exactly what the macro is expanding into. That will give us an idea what's... Matt DTS ...causing the problem. AFA Gary J is not valid, or misspelled, or the opcode is in the label column. Dave Lyons Are you including the DIALOG.MACS file in your program? I just looked, AFL Dyfet And EXP turned ON, so you can see if it's found and, if so, what it's being Dave Lyons and _NoteAlert is in there in my copy. AFL Dyfet exanded to :) Astronewt It has USE SKEL.MACS, but no dialog. Is that the problem? AFA Gary J Ahh.. SKEL.MACS was probably macgenned...special for the sample AFA Gary J No.. _NoteAlert in it. Dave Lyons My disk doesn't contain a SKEL.MACS.S file--Gary sounds right. Astronewt Thanx, I guess it's obvious I'm new at this. Matt DTS (Is that "no, NoteAlert's in it" or "no NoteAlert in it"?) Astronewt So, how do I fix the macs? Coach101 Forgot how loose things were when Matt was not here :) AFA Gary J :) That's no _NoteAlert in it :) Dave Lyons What's a NoteAlert INIT? :-) AFA Gary J (in other word... it probably ain't there :) AFA Gary J word = words Coach101 Who wants to explain MacGen? AFL Dyfet Astro, I think you will find this to be a good time to learn about which macro AFA Gary J (Bad typing this evening :) AFL Dyfet files you will need to use with various tools :), and which tools, for that Astronewt I think you're right, the ~ version is there, but not the _ version. AFL Dyfet matter, are actually needed to accomplish various tasks :). Astronewt This may sound dumb, but why aren't these macs accessable from the OS? Dave Lyons I don't understand the question. AFA Gary J They are language dependant, for one thing. Astronewt So tools are known by numbers only? AFA Gary J They are known by numbers only to the firmware. Dave Lyons Yes, the system does not keep track of the names of any of the toolbox or OS calls. Coach101 Newt, in the interest of speed the assemblers and compilers for the II-GS AFA Gary J (or OS, as it may be) AFL Dyfet OIC...Yes, internally to the system, they are known by numbers...It would use Coach101 do not contain a *single* file that has ALL of the definitions for ALL AFL Dyfet a lot of space, and certainly reduce speed by defining tools by name in the OS Astronewt This is getting scary- it's starting to make sense now! Coach101 fo the tools in it. The definitions are split into different files for Coach101 each tool. You tell the assembler which files to use and since the Coach101 assembler only has to process the files you need, it runs quite a bit Coach101 faster and maybe more importantly runs in considerably less memory. ga AFA Gary J But Coach...that leads you right in to the MacGen explanation.. :) Coach101 ga Gary :) Astronewt Wow, thanks for the help, everybody. I spent days on this already. AFA Gary J As Coach says, less files makes faster speed... so a utility was developed that AFA Gary J will scan your program... and the files or directory you specifiy, and locate AFA Gary J all the macros you use and put them in one file specific to your program. AFA Gary J That way when you assemble, you only have to specifiy one streamlined macro AFA Gary J file. AFA Gary J GA AFA Gary J (Macgen is the utility I was speaking of...forgot to say that) Astronewt I'll be sure to check in next week with more questions. Maybe about macgen- Coach101 You can also post your questions in the Lets Discuss area here under Coach101 Assembler... That way you have a chance at getting answers and help Coach101 more than once a week. AFA Gary J Very true. AFL Dyfet Very good suggestion, Coach... Astronewt well, I've tried that, but there's nothing like interaction. AFL Dyfet Okay, I see A2GS has something he wishes to bring up :)...GA A2. A2GS Well, I've had an AST VisionPlus card for the past 3 weeks and I still get a Astronewt thanks, Coach. Do you check the most recent development folders? A2GS window which says "No VisionPlus Card" whenever I run the accompanying A2GS software, any "NEW" ideas on what I might be doing wrong? No it's not the slot A2GS settings and I am using a 256k DMA compatible memory board since my 1.25 meg A2GS memory board is NOT DMA compatible :( GA Matt DTS What slot is it in, Al? Astronewt The people at RW told me that the tool for that is bad in GS/OS v5.0, really. A2GS I've tried it in both 2 and 7 A2GS Do I need more memory? The things supposed to work on a 512k machine. Dave Lyons Which tool? Astronewt They said to comment out the one for a digitizer card. I can check the number. A2GS Does the input device have to be hooked up and/or playing when I run the A2GS software? AFL Dyfet GA Scott... AFL Scott Are you sure the cards not bad? Astronewt It's in the GENERIC.SOURCE file... A2GS Not that I know of, but then again there always is a possibility.... A2GS I'm going to try it out on another machine next week and see what the results A2GS are there. AFL Scott Do you have _any_ docs for it? Things such as registers on the board? If you A2GS It seems like that's the last possible answer :( AFL Scott do, you could always examine the registers from the monitor. A2GS All MAC owners should know there's a secret contest! Astronewt A2GS, it might be the OS, that's what Roger Wagner Publishing said. A2GS I'm running it under the software's own OS, and I've tried looking at the AFL Scott Done.. AFL Dyfet GA Mike... A2GS registers, but couldn't find the set of ID bytes for the card like I was A2GS supposed too, at the corresponding slot address. AFL Mike F OK -- But I see the question has already been answered. I was going to suggest using the native Astronewt Ok, just a suggestion. AFL Mike F OS on the disk rather than version 5 of GS/OS. AFL Mike F Done A2GS The softwares using the OLD old launcher from the original GS. A2GS system disk. AFL Dyfet A bit of nastalga there :) Coach101 If you can not see the ID bytes from the monitor, I would go no further Coach101 until you can see them! That is a basic enough problem to stop the AFA Gary J Hmmm how OLD is the software? Could the 1.0 ROM be the problem? A2GS Could be the card is defective will have to see what happens on another GS. Coach101 whole process. ga A2GS Thought about that, Gary, but the software seems to be working fine. AFL Dyfet Do you see anything at all in the locations where the id bytes are supposed to AFL Dyfet be, or just random bytes? It does certainly not bode well for the health of AFL Dyfet the card... A2GS Not sure about the bytes, but I think that they're the standard bytes you A2GS would find on booting the system without the card. I looked at $C200 and $C700 A2GS when the card was plugged into the corresponding slots (2 and 7) AFL Dyfet I take it you are certain you have the control panel set for external card for A2GS Yup. AFL Dyfet those slots...do they look like the same bytes you get when you have the card AFL Dyfet (make that slot) set for internal? A2GS I've done it a million times, I don't think I did it wrong every time. A2GS Not absolutely sure. AFA Gary J You could just be a consistant sort of guy... :) Coach101 Do you do an OsShutdown and/or power off/on after changing slot/port settings? A2GS But let's just say that when I did look for the ID bytes, they were nowhere A2GS to be found. A2GS I completely shutdown the machine every time or did a self test. Dave Lyons What were the ID bytes supposed to be? A2GS checking.... A2GS Doesn't list the specific bytes, but says that the ID bytes will remain the A2GS same for all future (HaHa) AST VP cards. But from what I can remember, I didn't A2GS find any bytes which were different from the way they were without the card A2GS when looking at the specific address ($C200/$C700) Dave Lyons Did you find legit machine code? Like for the internal port? A2GS BTW the ID is 7 bs long. AFL Scott A2...The only way you're gonna find out for sure what they're supposed to be A2GS Don't remember... AFL Scott is to hack the code to see what it expects. Coach101 Have you tried other cards in slots 2/7 and did they work? A2GS I've got a Sonic Blaster which has always worked fine in slot 2. AFL Scott Use a debugger like GSBug in Trace mode. It's the easiest way I know to find AFL Scott what code wants. A2GS The easiest way I see, Scott, is to see if there is any change between when A2GS the card is in the slot and when it isn't, if nothing changes then something Coach101 Darn call waiting again A2GS isn't happening like it's supposed too. AFL Scott Right. If that's the case, the cards hosed. A2GS Seems like the only possibility, I'm going to try getting my hands on another A2GS card and see if there's any difference. A2GS This one's just borrowed from a friend, to try out, But he hasn't used it in A2GS months, maybe this is the reason why. A2GS Go on to a new Q, this could take all night. AFL Scott To depart for just a second. A member of my forum want's to know if System AFL Scott Software 5.0.2 is up yet... I've been busy uploading huge files, so I haven't AFL Scott had time to check. AFL Dyfet Gary, care to answer that one :) AFA Gary J It's not up yet (out) but will be--- tonight Coach101 Did Santa Claus give it to you tonight Gary :) AFL Scott Ok, Thanks! This member was worried about downloading those huge files I've AFA Gary J (At least I think so... I haven't REALLY had a chance to see what we've got AFA Gary J there :) AFL Scott uploaded without having something they require. AFL Dyfet And we also need to fix up the descriptions :) AFA Gary J Yup. A2GS Is it available to dealers yet? (sent out?) A2GS GA AFL Dyfet I believe it is, or should be, available to dealers at this point. AFA Gary J I don't know.. A2GS I'm afraid to ask and naturally get the wrong answer. A2GS Done Coach101 You would probably be told that 6.0.3 was current :) A2GS :)