|||||| |||||| || || |||||| |||||| || || ||| || || || || ||| |||| |||||| || |||| Your || || || || ||| || || |||||| |||||| || || |||||| |||||| GEnieLamp A2Pro || |||||| || || |||||| RoundTable || || || ||| ||| || || || |||||| |||||||| |||||| RESOURCE! || || || || || || || ||||| || || || || || ~ WELCOME TO THE A2Pro GENIELAMP! ~ ~ KITCHEN SINK SOFTWARE JOINS CAT29 ~ ORCA/C ALPHA VERSION AVAILABLE ~ ~ HYPERMEDIA RTC MOVES TO A2PRO ~ HOT RTC EXCERPTS ~ ~ ORCA/PASCAL, METAL/FV, AND NAMOBJ RTC TRANSCRIPTS AVAILABLE ~ ~ JIM MARICONDO JOINS A2PRO STAFF ~ TWII SPECS IN LIBRARY ~ ~ 8/16 CENTRAL MAG IN LIBRARY ~ APPLE ASSEMBLY LINES MAG IN A2PRO ~ ~ HOT NEWS ~ HOT MESSAGES ~ HOT VIEWS ~ ////////////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ GEnie Lamp A2Pro ~ A T/TalkNET OnLine Publication ~ Vol.1, Issue 06 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Publisher.................................GEnie Information Services Editor-In-Chief........................................John Peters Editor.................................................Jim Couch ~ GEnieLamp IBM ~ GEnieLamp [PR]/TX2 ~ GEnieLamp ST ~ GEnieLamp A2 ~ ~ GEnieLamp MacPRO ~ GEnieLamp A2Pro ~ GEnieLamp Macintosh ~ ~ Member Of The Disktop Publishing Association ~ ////////////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ >>> WHAT'S HAPPENING IN THE APPLE A2Pro ROUNDTABLE? <<< """"""""""""""""""""""""""""""""""""""""""""""""""""""" ~ July 1, 1993 ~ FROM MY DESKTOP ......... [FRM] A2PRO ROUNDTABLE STAFF . [DIR] Notes From The Editor. Staff Directory. HEY MISTER POSTMAN ...... [HEY] DEVELOPER'S CORNER ...... [DEV] Is That A Letter For Me? News from A2Pro Developers. RTC WATCH ............... [RTC] A2U CAMPUS GREEN ........ [A2U] A2Pro RTC News. Your GEnieLamp guide to A2U. LIBRARY BIT BONANZA ..... [LIB] APPLE ASSEMBLY LINES..... [AAL] HOT Files You Can Download. A Tour of Apple Assembly Line LOG OFF ................. [LOG] GEnieLamp Information. [IDX]""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" READING GEnieLamp GEnieLamp has incorporated a unique indexing """"""""""""""""" system to help make reading the magazine easier. To utilize this system, load GEnieLamp into any ASCII word processor or text editor. In the index you will find the following example: HUMOR ONLINE ............ [HUM] [*]GEnie Fun & Games. To read this article, set your find or search command to [HUM]. If you want to scan all of the articles, search for [EOA]. [EOF] will take you to the last page, whereas [IDX] will bring you back to the index. MESSAGE INFO To make it easy for you to respond to messages re-printed """""""""""" here in GEnieLamp, you will find all the information you need immediately following the message. For example: (SMITH, CAT6, TOP1, MSG:58/M530) _____________| _____|__ _|O__ |____ |_____________ |Name of sender CATegory TOPic Msg.# Page number| In this example, to respond to Smith's message, log on to page 475 enter the bulletin board and set CAT 6. Enter your REPly in TOPic 1. A message number that is surrounded by brackets indicates that this message is a "target" message and is referring to a "chain" of two or more messages that are following the same topic. For example: {58}. ABOUT GEnie Effective July 1, GEnie's non-prime time connect rate drops """"""""""" to $3.00 per hour, a reduction of 50% from the current rate. The monthly fee has been restructured, and moves from $4.95 to $8.95, for which up to four hours of non-prime time access to most GEnie services, such as software downloads, bulletin boards, GE Mail, an Internet gateway, multi-player games and chat lines, are allowed without charge. To sign up for GEnie service, call (with modem) 1-800-638-8369. Upon connection type HHH. Wait for the U#= prompt. Type: XTX99014,DIGIPUB and hit RETURN. The system will then prompt you for your information. Need more information? Call GEnie's customer service line (voice) at 1-800-638-9636. """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" [EOA] [FRM]////////////////////////////// FROM MY DESKTOP / ///////////////////////////////// Notes From The Publisher """""""""""""""""""""""" By John Peters [GENIELAMP] WOW! WHAT A MONTH!!!! First off, an apology is in order from me to you """""""""""""""""""""" for the mass confusion that was created by not releasing a mid-month GEnieLamp as we promised in the last issue. No excuses here. I simply took on too much, too soon. I did not fully realize the extra manpower and time it would take to do two separate issues for all the platforms we cover. Anyway, to make a long story short, we have gone back distributing GEnieLamp on a monthly basis. After we have had a chance to re-group we'll take another look at publishing a mid-month issue. WELL, IT'S JULY 1ST and the the "new" GEnie is now officially online! """"""""""""""""""" How does the new pricing structure affect GEnieLamp readers? Well, for one thing we are now offering GEnieLamp in compressed format from the menus. GEnieLamp IBM and ST will be in PK-Zip format, GEnieLamp Macintosh will be .SIT compressed and GEnieLamp A2 and A2Pro will be compressed in .BXY format. What does this mean to you? It means much less time spent in downloading the magazine - in some cases half the time it used to take. Also, GEnieLamp Macintosh and GEnieLamp A2/A2Pro is now "computer friendly." That is we have removed the linefeeds which mess up the formatting on Apple computers from the magazine. Of course, this means that other computers will now have to convert the Mac/A2 issues in order to read them on their systems. To solve this problem (and for those of you who prefer to read GEnieLamp online) there is a separate ASCII version of each issue available in the DigiPub Library located on page 1395. A nice plus to the "new" GEnie is everyone's account now has access to Internet with no sign-up fees or byte charges. I for one plan on exploring this new option asap. For those of you who read GEnieLamp via Internet, our Internet address is: GENIELAMP@GENIE.GEIS.COM Until next month... John Peters GEnieLamp/DigiPub RoundTable [EOA] [DIR]////////////////////////////// A2PRO ROUNDTABLE STAFF / ///////////////////////////////// By Jim B. Couch [J.COUCH2] ______________________________________________ APPLE II PROGRAMMERS & DEVELOPERS ROUNDTABLE _____ ______ ______________________________________________ /_____|/______\ /__/|__| ___|__| Head Sysop: Matt Deatherage (M.DEATHERAGE) /__/_|__| /_____/ Assistants: Steve Gunn (A2PRO.STEVE) /________|/__/ __ __ __ Greg Da Costa (A2PRO.GREG) /__/ |__|__/______ /_//_// / Todd P. Whitesel (A2PRO.TODDPW) /__/ |__|________// / \/_/ Jim Maricondo (A2PRO.DYAJIM) >>> A BIG WELCOME TO JIM MARICONDO <<< """""""""""""""""""""""""""""""""""""" INTRODUCING JIM MARICONDO Hi everyone! In case you haven't noticed, I'm """"""""""""""""""""""""" taking over in A2Pro as Company Support Specialist, which should be fun. I'll share a brief history, but I'll try to spare you the boring details.. I got my GS in sixth grade in '87. I couldn't get enough of it. I also immediately was intrigued by AppleSoft BASIC.. I futzed with BASIC for the next 2 years, writing a few cheezy programs but nothing much. I considered learning assembly in that time, but it seemed too confusing, so I tried to start learning Pascal, with TML Pascal and later TML Pascal II. Unfortunately there weren't any GS specific Pascal books back then, so I never made it very far with Pascal. Then around the first of the year 1990, I decided to give assembly another go. So I picked up Orca/M 1.2, and Lichty & Eyes' Programming the Apple IIgs in Assembly Language. At first it was all confusing, but day by day it made more sense. By mid-January, after working with assembly for about a week, before I could even write my own program that worked, I had already cracked my first game: Ancient Land of Y's GS by Broderbund. A week or two later I finally wrote my first program in assembly, a crude deal that, among other things, disabled the control panel and color cycled the border and blacked the screen (hmm, maybe that's how I got started in screen savers :-). Around this time DYA was born. By another month I was quite accomplished, or so I thought, working on DYA Demo 1, a never released collection of semi- crude demos. In March I wrote my first releasable quality demo - the skull demo, in April I put away the Lichty & Eyes' book after a few chapters, because I was too bored programming the desktop (I never did make it past chapter 7 :), in May I wrote TextScroll II, and then having gained a very good grasp of stack based scrolling, in June we released the Photon demo, employing a whole new bunch of techniques for us. Okay, I'll speed up the pace some :-) Over the summer we concentrated on Mother Earth - the Galactic Information System (of which we did release a demo version) which was supposed to teach people about the solar system. Unfortunately this turned out to be much too large of a project for our resources. It was also around this time that Jonah Stich and I agreed to work on Twilight I 1.0 together; he would do the CDev since he was experienced with the toolbox, and I would do the modules since I liked doing animation things better. It worked out pretty well, or at least at that time. That fall (1990), SoundSmith players were in, and Jonah and I each hacked out our own. It was then that I entered the arena of music. I had planned to do a MIDI System Exclusive (SysEx) program, but it never quite made it. Hot Licks was born around this time; it was supposed to be a state of the art SoundSmith jukebox. It made it to the early beta stages, but we soon realized it was pointless to compete with SoundSmith. But it did teach me enough about accessing the DOC to get things done, music wise on the GS. Okay, this is getting long.. :) By the spring of 1991 I went back to learning the toolbox, having learned enough about animation and music. Jonah quit the GS world, so I decided to finish up "Twilight 2.0" myself. KansasFest came and went. At the end of the summer I became enthused with low level disk i/o. I disassembled the Nucleus and Modulae loaders (to near perfection, IMO ;-) and learned an incredible lot in the process. Yes, it was too tempting to want to use some low level i/o on a demo, but I never fully succumbed to that urge. Instead I learned to bitch at Apple for not including more features in the AppleDisk3.5 GS driver . In the fall (of '91) I put aside Twilight II and took it upon myself to start coding a CDA to play soundsmith music in the background of desktop programs. It too got to the early alpha stages, but due to some difficulties (we (Derek and I) wrote our own text drivers (and text mousetext desktop environment) entirely from scratch (no GS/OS console or text tools were used at all!) and Derek Young didn't feel like coding the routines to save and restore rectangles of text on the screen; plus my soundsmith driver had mutated somewhere along the way, and when I implemented pitch bends, I lost the ability to properly play arpegiattos) it soon was put aside. Well, since that I've been concentrating on Twilight II. Well, not ALL the time (I took various voluntary and involuntary breaks for maybe a total of 4 months last year), but all my programming time has gone into it in 1992 and 1993, with little exception. I've learned a lot along the way; hacked with ADB (it won't break! :), patched out enough toolcalls to go crazy, disassembled a bunch of parts of both roms, and had a lot of fun in the process. What's next? After T2 1.1 is released I will definitely take a break before working on the next version. It takes a non-trivial amount of time to run DigiSoft, but it's fun. We wouldn't mind publishing some other people's software in the future. We'll be releasing an upgrade to Twilight II in 4th QTR 1993 or early '94, and the future is bright. I guess that's mostly it. Hope I didn't bore you too much! It was certainly a nice nostalgia trip for me :-) Jim Maricondo A2Pro Company Support Specialist (A2PRO.DYAJIM, CAT1, TOP2, MSG:34/M530) [*][*][*] STEVE GUNN AND GREG DA COSTA TO SWITCH JOBS! Some of this crew running """""""""""""""""""""""""""""""""""""""""""" this roundtable has been doing it for over a year now, and I kind of think people should have the opportunity to do new stuff every now and then. So, I'm pleased to announced that Steve Gunn and Greg Da Costa are more or less changing responsibilities around A2Pro. Greg will be our new head of A2 University, effective immediately. Greg has lots of nifty ideas that should make lots of people learn more things. Greg's been on GEnie for yearsnyears, having pulled all kinds of duties in both A2 and A2Pro. This is a new area for him and I'm pleased he feels up to the challenge. Steve Gunn, who saw us all through "Ultra 4 - to the MAX", "Hacking Data Compression" and Marc Wolfgram's recent Resource Course, will take over Greg's duties of archiving large topics in the bulletin board, updating the new topic service, and uploading cat/topic databases to the A2Pro and A2 libraries regularly. Steve will also continue scheduling formal RTCs with folks you want to hear from, like Mike Westerfield, Bill Tudor, Joshua Thompson and Andy Wells, as well as working on some important present and future A2Pro special projects. Take a moment to give both Steve and Greg a pat on the back and wish them luck in their new efforts. If you have any suggestions, we'd love to hear them in topic 3. --Matt (*new* graphics/sound programming RTC Thursdays @ 9:30 PM ET!) (M.DEATHERAGE [A2Pro Leader], CAT1, TOP17, MSG:101/M530) [EOA] [HEY]////////////////////////////// HEY MISTER POSTMAN / ///////////////////////////////// Is That A Letter For Me? """""""""""""""""""""""" By Jim B Couch [J.COUCH2] o BULLETIN BOARD HOT SPOTS o A2PRO ODDS & ENDS o WHAT'S NEW? o PROGRAMMER'S CORNER o HELP WANTED o HOT TOPICS o MESSAGE SPOTLIGHT >>>BULLETIN BOARD HOT SPOTS <<< """"""""""""""""""""""""""""""" [*] CAT1, TOP19, MSG{1}..............Apple Assembly Line Magazine [*] CAT13, TOP17, MSG{1}......Is Control-Reset really dangerous?!? [*] CAT16, TOP24, MSG{18}......................Shareware Solutions [*] CAT29, TOP32 MSG{1}........About Kitchen Sink Software Online [*] CAT29, TOP35, MSG{2}........MicroDot - Programming in Assembly [*] CAT36, TOP11, MSG{92}...................................ORCA/C [*] CAT36, TOP31, MSG{17}................Miscellaneous Discussions >>> A2PRO ODDS & ENDS <<< """"""""""""""""""""""""" A2PRO REAL TIME CONFERENCES ARE BETTER THAN EVER People are having more """""""""""""""""""""""""""""""""""""""""""""""" fun in A2Pro's real-time conferences than ever before -- nearly four times as many people joined us for a chat last month than did last year at about the same time, showing Apple II programming is alive and well in the hands of a capable new generation. Our formal RTCs, with guests like Mike Westerfield and Bill Tudor continue to provide you with live answers from the people you want to talk to. The ORCA/Pascal 2.0 conference held last month was one of the most popular events in A2Pro this spring -- you can even read what you missed by downloading the transcript from our library. With the GEnie rates going down on July 1st, you can spend twice as much time in A2Pro's fun and informative RTCs for the same price, so we figured we should have twice as much stuff to talk about. A familiar face will be coming to A2Pro for a weekly RTC starting Wednesday, July 7th (details coming soon!)... --Matt (M.DEATHERAGE [A2Pro Leader], CAT1, TOP17, MSG:96/M530) SHAREWARE FEEDBACK WANTED How times flies when you're having fun. I """"""""""""""""""""""""" hadn't realized how long it'd been since I last stopped by A2Pro. Thanks, mAtt, for not nuking this topic. For a possible panel at KansasFest, and for a possible article, and just as a way to help shareware authors, I'm wanting to figure out why some shareware makes more money than other shareware. Given that two shareware programs are equal...as far as usefulness and high quality...I wonder why one might make more money than the other. When I first started thinking about this, I thought about developing some kind of survey that shareware authors could take, but the more I think about that, the more I think that the wording of the survey would reflect my personal opinions and might be leading (or loaded) questions. So, I'd like to pose this as an open ended question. What do you think? Some of the ideas I have concern simple human interaction and respect and courtesy. As an example, I can't believe how many letters I've gotten from people concerning Kenrick Mock (you here, Kenrick?) and telling me just how pleased they were that they sent money to him. One person wrote to tell me how pleased they were that Kenrick had included a note to him, and just how good that made him feel. Maybe some leading questions... What do you do to encourage folks to remit shareware fees? How do you handle updates for registered users? Do you have a shareware version and a registered version? Do you mail anything out to those who send in fees? Please feel free to respond to these questions, or to respond to questions that I haven't asked. In short, what I'm asking for, and hoping to learn, is what strategies are successful and which aren't. I do want to gather this info and share it, as I thoroughly believe that the future of the Apple II is in shareware, and I want to help encourage more shareware, and want to assist in sharing hints for a successful shareware strategy. Thanks in advance... Joe Kohn (J.KOHN, CAT16, TOP24, MSG:18/M530) >>> WHAT'S NEW? <<< """"""""""""""""""" APPLE ASSEMBLY LINE MAGAZINE COMES TO A2PRO!!!!!!!! ----- -------- ---- -------- ----- -- ------------- ____ ____ | | Bob Sander-Cederlof, the author of Apple Assembly | | | | Line, has granted A2Pro EXCLUSIVE permission to have the | | | | entire text of Apple Assembly Line magazine from October | | | | 1980 to May 1988 available on-line right here in A2Pro!! | | | | | | |____| Apple Assembly Line is an 8-bit hacker's dream! |____| __ Hundreds of ideas and even sample source code helping you __ / \ do just about _anything_ with your 8-bit Apple II! / \ | | | | \__/ ALL RIGHT HERE IN THE A2PRO LIBRARIES!!! \__/ 8/16-CENTRAL MAGAZINE COMES TO A2PRO!!!!!!!! ---- ------- -------- ----- -- ------------- ____ ____ | | A2Pro now has EXCLUSIVE permission to have the | | | | entirety of 8/16-Central's issues in electronic form | | | | right here in the A2Pro Libraries!!! You may remember | | | | the recent Apple Assembly Line announcements. 8/16- | | | | Central is a similar venture, but a little more modern! | | |____| |____| __ With these two magazines in the A2Pro Libraries, we now __ / \ have TWELVE YEARS of Apple Programming history, help, / \ | | hints, and how-to's online! | | \__/ \__/ ALL RIGHT HERE IN THE A2PRO LIBRARIES!!! >>> PROGRAMMER'S CORNER <<< """"""""""""""""""""""""""" MICRODOT TIP One of the cool things you can do with MicroDot's parameter """""""""""" parsing entry points that is NOT documented in the manual is to write a machine-language routine which, as its very first act, calls MicroDot to parse parameters. Now, naturally, such a routine can be called with the syntax: CALL
,,,.... However, parameters can ALSO be passed to it immediately upon loading the routine with the &.BX command: &.BX,"",0,,,... The secret to the trick is the 0 parameter immediately after the filename. This serves as a placeholder for the load address. (MicroDot expects to find a load address after the filename, or nothing at all. If you don't specify a load address between the filename and the parms, it will take the first parm as your load address, or give you a syntax error if it's a string.) When MicroDot sees a zero for an address, it knows you don't really mean zero but instead mean the file's default load address. This is ideal for non-resident routines that you want to load from disk when needed (perhaps into page 3) and then forget about. For example, you could write an assembly language copy routine which would be called like so: &.BX,"COPY",0,"/DISK1/FILE1","/DISK2/FILE2",8192,8192 (The last two parameters would be the address and length of the buffer; you could make it use some useful default if those values were not found.) Of course this routine could also be called like this: &.BL,"COPY" CALL 768,"/DISK1/FILE1","/DISK2/FILE2",8192,8192 Try doing THAT with Basic.System's BRUN command. B) (QC [Jerry], CAT29, TOP35, MSG:2/M530) ASSEMBLY HELP PLEASE! Could someone please explain to me what I'm doing """"""""""""""""""""" wrong here. This started trying to debug a larger routine and somehow boiled down to this; RDKEY = $FD0C PRBYTE = $FDDA STOR = $900 ENTRY LDA #$00 TAY BEGIN JSR RDKEY CMP #$8D BEQ END STA STOR,Y JSR PRBYTE INY JMP BEGIN END BRK I've been entering three numbers which get stored at $900, $902, and $904, rather than at $900, $901, and $902 that I expected. When the BRK is reached at END, Y = 6 and A = the 8D that ended input. Why is Y being incremented six times rather than three? Ah, the trials of a very fledgling assembly programmer. Mark (M.WADE7 [Mark], CAT2, TOP6, MSG:86/M530) HAPPY TO OBLIGE I believe RDKEY uses the Y register (to display the """"""""""""""" flashing cursor -- it holds the horizontal cursor position and is used to index from the screen line's base address). In other words, your INY has no effect (you could take it out entirely and get the same results) because the Y register is getting set by the call to RDKEY. The reason it increases by two bytes each time is because you are printing two characters to the screen via PRBYTE each time. (QUALITY, CAT2, TOP6, MSG:87/M530) THANK YOU! Right on the money, and thank you! I deleted the INY and got """""""""" the same results. I then replaced INY with INX (also STOR,X of course) and the addresses were indexed properly ($900,$901,$902). No reference to this in the tech.ref.man. although the rom listings at $FDOC do show this... (M.WADE7 [Mark], CAT2, TOP6, MSG:90/M530) DEALING WITH PACKED SUPER HI RES IMAGES Here is a generic routine for """"""""""""""""""""""""""""""""""""""" dealing with Packed Super Hi-Res Images. (aka, .pak images). The routine currently assumes that you are passing the handle of such an image and it'll allocate a new handle and return it at the pointer you specifiy (in other words, destRefIsNewHandle). Someday I'll finish it so I can use sourceRefIsPointer, sourceRefIsResource, destRefIsPointer, destRefIsHandle. But right now it only works with sourceRefIsHandle+destRefIsNewHandle. In any case, I think the code is pretty self-explanatory... DecompressPSHR procname EXPORT DefineStack long dest long packedPtr long packedSize long unpackedPtr long unpackedSize word endlocals FixStack begparms flags word destRef long source long endparms BeginStack * --- get a handle for the destination phl ; result space phl #$8000 ; 32K phw #attrLocked+attrFixed+attrNoSpec+attrNoCross _MMNewHandle plx ply bcs @error stx >> HELP WANTED <<< """"""""""""""""""" GS/OS ASSEMBLY PROGRAMMER NEEDED We have a temporary (possibly """""""""""""""""""""""""""""""" permanent) sysop position opening up for anyone who's familiar with assembly language programming with the toolbox under GS/OS. We need someone to make modifications to the CoPilot program for us, which we now have the source code for. Most of the modifications are simple, but it will require taking apart someone else's code first to see how it operates, which is probably the most difficult part of the job. This is such a major part of our operation here that this is definitely a SYSOP POSITION. So if you're interested in being our "sysop in charge of CoPilot," please send me e-mail ASAP. Dean Esmay (A2.DEAN [A2 Chief], CAT13, TOP8, MSG:56/M530) >>> HOT TOPICS <<< """""""""""""""""" SOME CONTROL-RESET FACTS PLEASE As some of you may know, I've always told """"""""""""""""""""""""""""""" people (especially non-hacker types) NEVER to use Control-Reset unless there is no alternative. Well, on issue #43 of Softdisk G-S I once again stated that, and this time I've scared a couple hundred subscribers (going on the assumption that only 10% of subscribers bother to write us about something). I'd like to address the issue in my Inside View column on issue #45, but I'd like to have some facts (if there are any) instead of just my opinions. Also, it'd be nice to include a brief history of Control-Reset -- what was it originally for and all that good stuff. Problem is I don't know much about the early Apple IIs when it comes to this kind of stuff. Any insight would be appreciated! Bryan (SOFTDISK.INC [Zak], CAT13, TOP17, MSG:1/M530) A BRIEF HISTORY OF CONTROL-RESET Bryan, here's a first-draft cuddly """""""""""""""""""""""""""""""" version. Feel free to cannibalize it. The very first Apples were helpless when you first turned them on. You had to hit reset to coax them into a known state for the first time, after which they were happy campers until something Bad happened and they got all confused again. About the time of the ][+, Apple decided to fix this annoying 'feature' by having the computer automatically reset itself when you first turned it on. The purpose of reset (now Control-Reset to prevent accidents) is still the same: it forces the computer to drop whatever it is doing and get into a known state from which you can use it. That is why Reset always works unless something serious is wrong. The problem: computers are great at keeping things organized, but if you throw a virtual wrench into the works they get confused mighty fast. They are also really lousy at picking up where they left off when they have to drop everything to handle a reset. Unless the program you are running has complete control of the Apple and is written specifically to recover from a reset (many good 8-bit programs are), reset WILL throw a wrench into the works and do bad things. With IIgs programs this gets even more dangerous. Since it is easy to shut down the system nicely, a lot of IIgs software assumes you will do that -- especially GS/OS itself. If you use reset or turn the power off, you _will_ lose anything you haven't saved yet, and things that were just saved might not get written completely; anyone with a RamFast has to be aware of that because it's obvious when the stuff gets written a second later. GS/OS and the finder procrastinate about writing some things until the moment you pick shutdown. In other words, you can't go wrong by avoiding resets unless nothing else works. You are also usually safe if nothing needs to be saved (beware of INITs and such that keep track of things and might not be obvious about saving stuff), but it is not nearly as easy to determine this with GS/OS as it is with P8. Todd Whitesel (A2PRO.TODDPW [growf?], CAT13, TOP17, MSG:2/M530) CONSEQUENCES OF CONTROL-RESET The easiest thing to mess up with """"""""""""""""""""""""""""" Control-REeset is your disk. In a way, baring hardware problems, that's all you can mess up (other than loosing some data or maybe jamming a printer by leaving it halfway through an operation). Loosing data has to be expected, and that might mean a partially written file that can't even be read again. Even more serious in my ming is that you might interrupt GS/OS in the middle of writing a particularly critical file -- like updating a catalog or the volume bitmap. I don't know if it's a problem with 3.5" drives & SCSI devices, but in the case of a 5.25" floppy, it's even possible to interrupt the O/S while it's writing a block. If that happens, you usually have to reformat the disk. Because of all of this, I'd suggest one additional safety precaution. It's especially important if your program is writing to disk when the problem pops up. Get into the CDA menu, and let the machine settle down. That gives GS/OS a chance to finish what it's doing (since you won't get there until it does). Do the reset from the CDA menu. Mike Westerfield (BYTEWORKS, CAT13, TOP17, MSG:4/M530) MORE ON CONTROL-RESET People who used eight-bit Apple II computers got """"""""""""""""""""" used to Control-Reset as an all-purpose "attention" key. "I don't like what's going on, I'm going to stop it by pressing Control-Reset." The eight-bit operating systems are fairly simple and don't cache much into memory, so it was generally safe unless you hit it while a disk light was on. The worst that would generally happen is that you might have an open file that didn't get completely flushed to disk. It just can't work that way on the IIgs. Reset is a non-maskable interrupt and the OS can't prevent it. You could interrupt in the middle of a GS/OS session, which means you have a whole bunch of stuff in memory that's not yet written to disk, and you hit a key that stops the OS dead in its tracks. Unlike regular interrupts, you can't return from reset, and GS/OS can't pick up where it left off unless it was about twice its current size, saving non- destructible state information everywhere _just in case_ someone hits reset. The IIgs is just too complicated to have an all-purpose attention key like that, which is why GS/OS started making it extremely difficult to "trap" reset. With ProDOS 16, which was based on ProDOS 8, you could sometimes recover without too much damage. Under GS/OS it's simply way too dangerous, and GS/OS tries hard to insure that if you press Control-Reset, you just reboot. You still run all the same risks as above, and you shouldn't do it - - but at least it doesn't return control to a program that then thinks things are normal and makes more OS calls, making things a lot worse. As for Control-Reset not working -- on the IIgs, the ADB keyboard microcontroller is what pulls the RESET line on the processor, and it does that when it detects you've pressed the reset key (power-on key for Macintosh computers). If the ADB key micro is lost in the weeds, it can miss the keypress. It's just a severe kind of crash; power-off will usually fix it. --Matt (M.DEATHERAGE [A2Pro Leader], CAT13, TOP17, MSG:7/M530) IT'S BAD NEWS IF CONTROL RESET DOES NOT WORK > That is why Reset always """""""""""""""""""""""""""""""""""""""""""" > works unless something > serious is wrong. Suggested rewrite of this sentence: "That is why Control-Reset always works unless something is badly wrong with the computer." For Control-Reset not to work at all would indicate something _really really_ bad, like you need repairs to your motherboard or at least your keyboard. There are lots of things that can go "wrong" which aren't that serious and which won't mess with Ctrl-Reset. If Ctrl-Reset isn't working, you almost certainly have _big_ trouble. Of course, it could be just a loose keyboard cable, but that's unlikely to be the only sign you'd see if that (i.e. if your keyboard cable is loose and/or bad, most likely more things will not work than just Ctrl-Reset). Dean Esmay (A2.DEAN [A2 Chief], CAT13, TOP17, MSG:3/M530) CONTROL-RESET DOES NOT ALWAYS WORK! I have had CTRL-Reset =not= work on """"""""""""""""""""""""""""""""""" occasion. Sometimes memory MUST be purged. Ctrl-Reset does NOT purge memory. Just because resetting a computer doesn't work does not automatically mean that something is broken. Tim (A2.TIM, CAT13, TOP17, MSG:5/M530) IT MAY NOT WORK, BUT IT DOES SOMETHING! I've simply never seen a case """"""""""""""""""""""""""""""""""""""" where hitting Ctrl-Reset will not cause _something_ to happen, was the point I was trying to make. You don't know for sure _what_ it will cause, but _something_ will happen because the processor _will_ be reset. I suppose to modify that I should say that if the processor is reset something's going to happen. I suppose Matt knows better than I when he says it's possible for a Ctrl- Reset to be lost somewhere on a IIgs without there being anything physically wrong. I've never seen it, but... Certainly on an 8-bit system it's impossible for Ctrl-Reset not to force something to happen without there being a hardware problem somewhere, the most minor of which would be a loose keyboard connector. Under most circumstances it's probably a lot more serious than that. Dean Esmay (A2.DEAN [A2 Chief], CAT13, TOP17, MSG:8/M530) CONTROL-RESET CAN FAIL ON THE GS On the GS, the Reset key is interpreted """""""""""""""""""""""""""""""" the same way as any other key, so an enterprising (yet most will call him stupid) programmer could remap it, or deactivate it. This behaviour is typical of Tool-Free programs, and if the program does this to you, it has likely done other things, too, like overwrite your RAMdisk, or worse. _ |_)ave |\/|iller (JUST.DAVE [m530 daily!], CAT13, TOP17, MSG:13/M530) YET ANOTHER WAY: Certain Kensington Turbo Mice had a ROM chip that, if """""""""""""""" you pressed both mouse buttons at the exact same time would freeze the ADB bus such that the only way out of it was a power cycle. These things were (fortunately) quite rare. (GARY.UTTER [DISPATCHER], CAT13, TOP17, MSG:14/M530) CONTROL-RESET SIMPLY RESETS THE PROCESSOR Having Ctrl-Reset just beep and """"""""""""""""""""""""""""""""""""""""" recrash into the monitor is not at all unusual. What would be unusual would be if you hit it and _absolutely nothing at all_ happened. The results of hitting Ctrl-Reset are not predictable. Winding up in the monitor is _very_ common (well, not under GS/OS, but in other environments). All hitting ctrl-reset does is reset the processor. How the processor reacts to that is not predictable unless a program specifically is written to act in a certain way following a reset. But if the processor is reset, _something_ will happen, guaranteed. _What_ happens is not the point; SOMETHING will happen. :-) Apparently it's possible for a Ctrl-Reset to be locked out on a IIgs under certain circumstances, which I hadn't realized but which doesn't surprise me. On other machines it's not possible at all however, unless you've got a bad keyboard or some similar hardware problem. Dean Esmay (A2.DEAN [A2 Chief], CAT13, TOP17, MSG:17/M530) >>> MESSAGE SPOTLIGHT <<< """"""""""""""""""""""""" Category 16, Topic 2 Message 58 Fri Jun 11, 1993 D.BROWN109 [Dan] at 02:22 EDT All right, I posted this over on A2 and they sent me over here. Enjoy! Rap it to the tune of "U can't touch this" by MC Hammer. Watch your phrasing, and all due appologies are hereby rendered to MC Hammer. :) (C) 1991 Radio Free Whateverthehell Can't Parse This My assignments hit me so hard make me say, "Oh My Lord thank you for blessin me with a load to code and a 2 hype seat" right here, in front of a Sparc looks good in the light, looks better in the dark but it tells me - in a manner quite harsh "This is a string I can't parse" (I told ya, kludge-boy) Can't Parse This (yea, a fatal error and you know) Can't Parse This (look at that code, maaaan) Can't Parse This (yo lemme bust some funky diagnostics) "fresh new bugs, and errors your code is more then compiler terror it's rotten - to the core I don't like it but you know I'll get more then I can handle on identifier not found or your semicolons gone step back - step back can't you see I'm developing a crack in my hardware - your code's a farce cause this is a string I Can't Parse" (yo I told ya) Can't Parse This (why you sittin there, man) Can't Parse This (yo, sound the terminal bell, ya got mail, sucka) compile-time bugs disrupt my rythm it's tellin me trash is what I'm givin him it's garbage, in and out but instead of a nice little a.out I get feedback fed back to me by this here RISC machine no fun what's it gonna take in the 90s to run these programs 4GLs? either learn those or wind up in hell that's longWORD because you know Can't Parse This Can't Parse This top-down! Stop! Compile Time! go with the flow it is said if you can't write in C then you probably are dead so wave K&R in the air waste a few nights, run your fingers thru your hair this is it no dinner - code like this and you'll surely get thinner sitting on your rump watch the machine cause it's gonna do a dump Can't Parse This Can't Parse This (ya better get Turbo cause I can't) I Can't Parse This (ring the bell, your mail's been returned) shutdown! Stop! Link Time! Can't Parse This Can't Parse This Can't Parse This slowdown! Stop! Run Time! every time I program it complains about my code maybe I'm in the wrong book or Emacs is in the wrong mode now I know that I'll never stop doing this cause our 3rd party software keeps on giving us fits I did an RTFM read K&R all day it's "Error!" "Big Error!" " Nasty Error!" " FATAL ERROR!" so instead I'll go and play Can't Parse This Can't Parse This I Can't Parse This (yeah) Can't Parse This (I told ya, wahoos,) Can't Parse This (too many symbols) can't Parse This (yo, we're outa here) Can't P--bus error (core dumped) --> Dan Internet: dbrown@mcvax.csusb.edu [EOA] [AAL]/////////////////////////////// APPLE ASSEMBLY LINES TOUR / ////////////////////////////////// Your Tour of The Apple Assembly Line Magazine """"""""""""""""""""""""""""""""""""""""""""" By Jim B. Couch [J.COUCH2] >>> APPLE ASSEMBLY LINE MAGAZINE COMES TO A2PRO! <<< """""""""""""""""""""""""""""""""""""""""""""""""""" ____ ____ | | Bob Sander-Cederlof, the author of Apple Assembly | | | | Line, has granted A2Pro EXCLUSIVE permission to have the | | | | entire text of Apple Assembly Line magazine from October | | | | 1980 to May 1988 available on-line right here in A2Pro!! | | | | | | |____| Apple Assembly Line is an 8-bit hacker's dream! |____| __ Hundreds of ideas and even sample source code helping you __ / \ do just about _anything_ with your 8-bit Apple II! / \ | | | | \__/ ALL IN THE A2PRO LIBRARIES!!! \__/ APPLE ASSEMBLY LINE MAGAZINE IN A2PRO! The Apple II Programmers and """""""""""""""""""""""""""""""""""""" Developers RoundTable (A2Pro) on GEnie publicly announced today that they have been granted exclusive permission to electronically distribute all issues of Apple Assembly Line magazine. Working in association with the Lost Classics Project of the GEnie Apple II RoundTables, A2Pro will be making all text and other data published in this periodical available in electronic form in the software libraries of their RoundTable. Apple Assembly Line (AAL) is a currently out-of-print assembly language programming magazine containing both articles and source code for the Apple II series of computers. It was formerly published monthly from October 1980 until May 1987 both in the traditional magazine / newsletter format, and on floppy computer disks, by Robert Sander-Cederlof. A2Pro is dedicated to the exchange of information related to programming the Apple II line of computers. A2Pro provides several services to professional developers and hobbyist programmers, ranging from question and answer forums to online support for software. The Lost Classics Project makes copies of participating Apple II software available in GEnie's A2 Roundtable and releases source code in the A2Pro Roundtable for preservation and updating purposes. (JUST.DAVE [m530 daily!], CAT1, TOP17, MSG:95/M530) AAL: IT'S NOT JUST SOME DISKS, IT'S AN ADVENTURE! You've all seen Dave's """"""""""""""""""""""""""""""""""""""""""""""""" announcement by now -- Apple Assembly Line magazine is here in A2Pro! All 92 issues of the much-fabled newsletter that discussed and provided source code for everything from parts of AppleWorks to tone generators to RWTS have found a home in A2Pro's library #22, and they're yours for the download. (Well, as of this moment only the first 24 issues, from October 1980 through September 1982, are actually present, but the other issues will be appearing over the next week to week and a half.) Some of you might be wondering about our decision (supported by Bob S-C) to make these files GEnie exclusive and prohibit them from being uploaded to other online services or bulletin boards. To partially answer this concern, let me explain how this came to be. The masters disks and paper copies of each issue had been in storage at Resource-Central, where Bob S-C dropped them off a few years ago. It was originally hoped they'd be republished on disk and sold, but it never worked out that way. When I found Bob S-C, I asked him if we could make them available online on GEnie exclusively in exchange for the work to make them accessible and presentable, and he agreed. The box arrived while Steve Gunn was visiting here -- 41 5.25" disks with files on both sides, essentially making 82 5.25" disks to work with. All disks were DOS 3.3, so we decided to use the DOS 3.3 FST to retrieve the files. As we started getting them off the floppies, we quickly discovered that 95% of the files had names that ProDOS wouldn't allow, but we used the ORCA shell to copy them to an HFS partition so we could rename them later. The disks weren't always organized as we might want. For the first three and a half years, source code was made available on a separate quarterly disk that was separate from the articles. The articles were on disks organized by month, except that multiple months would be on the same floppy but not the same group of months as would be on one source code disk. For example, one disk might have the articles from March through May 1983, while a different disk would have source code from January-March 1983 and a third would have April-June 1983. We'd always intended to make them available in issue-by-issue archives, so that made for a lot of rearranging to do. As we were transferring the files from the DOS 3.3 disks, we were surprised to see a ProDOS volume pop up, but it was only 70K and had only two files on it, which was much less than we expected. We checked the label and saw "DOS + ProDOS on one disk!" -- Bob S-C had published pioneering instructions about that time for making disks that could be used from both DOS 3.3 and ProDOS by having a valid VTOC as well as ProDOS volume directory. Almost needless to say, GS/OS doesn't support the idea of two file systems on one device. :) We couldn't get to the DOS 3.3 files because the ProDOS FST always grabbed the disk first, and always would because we booted from a ProDOS hard drive. The only way around it would be to boot without the FST over AppleShare, but then we'd have to make sure we didn't need _any_ files from the ProDOS hard disk, so we rejected that. All the eight-bit utilities we had recognized it only as ProDOS as well. We were getting kind of stuck. Until we had this idea. :) Steve wrote an ORCA shell command called "doof" to help. We had two 5.25" drives at our disposal. Doof reads a disk from drive one into a 140K handle. It then zeroes out ProDOS block two and writes the altered image to a second, pre-formatted disk in drive two. After that, normal ORCA shell commands would treat the original as a ProDOS disk but the second disk as a DOS 3.3 disk since there was no valid ProDOS directory. Pretty snazzy, and we got to continue. That worked for a few hours, but then we started crashing big-time. It took us a few hours to figure this one out, but it had to do with the DOS 3.3 disks. Bob S-C had used sector editors to "group" files in DOS 3.3 catalogs by editing the filenames to include unusual characters, inverse characters, etc. Well, starting near the end he'd actually made file names that had _zero_ length. This confuses the heck out of GS/OS -- if you think about it, how would you _use_ a zero-length filename? Dave Lyons and Jim Murphy agreed that the FST probably shouldn't return such files, and in SSW 6.0.1 it does not. I got a revised FST and finished transferring the files onto an HFS hard drive. Steve had long since returned to Indiana by this time; this was about 10 days after the box arrived. I spent some time over the next several days organizing the issues, which was easier late in the magazine's run because toward the end Bob was putting one issue on one disk side (thank you!). Getting the files in the right places required flipping through the paper versions to figure out which articles and programs went with which issues and sorting them into "Articles", "Dos 3.3" and "ProDOS" folders for each monthly issue -- all 92 of them. This took about two weeks of spare time. Meanwhile, we had a problem with presentation. All the source code was in S- C Assembler format, of course. The S-C Assembler "stole" the Integer BASIC file type (as several others have done over the year) and stored source code in there in a slightly compressed format. The S-C assembler used line numbers (like BASIC) and kept each line number as a two-byte integer, and used simple RLE compression for repeated strings of any character, especially spaces. The files weren't usable to anyone without the assembler. Bob, however, had never hidden the format of the files and published source to read the files twice -- once in the second issue, and once in the next-to- last issue. I was able to use most of that code in a Davex command (Davex is Dave Lyons' eight-bit command shell) called "sclist" to list an S-C file to standard output, with or without line numbers. We chose to include line numbers because the articles all refer to sections of code that way ("Lines 2200 - 2350 show how to open the file"). I hadn't written eight-bit assembly except in very small doses in about five years, but I got the command done in about 6 hours, which was pretty cool. I uploaded a sample issue that had renamed files and had seen sclist running on it to a private library for comments when Steve pointed out all the articles had junk on the end. DOS 3.3 didn't have end-of-file markers and marked the end of sequential text files with a zero byte in the stream (like a really, really long C string). For some reason, all the file manipulations had set the EOF of all the text files to be at the end of the block where the EOF should have been, and not at the right place within the block. This led to _another_ Davex command, "textify", which sets the EOF of any file to just before the first zero byte in the stream. That was another four hours. (Both commands were written in MPW IIgs Assembly.) I put in about an entire day in organizing this past holiday weekend and got all the issues finally organized into folders, finishing off three weeks of spare-time work. This was not as easy as I'd thought because on each issue there were many "place holder" filenames (for viewing a catalog and grouping files) that had to be discarded, as well as several other files that Bob had left on the disks (including articles that never made it to paper, car leases, correspondence, non-disclosure agreements and a few songs and Christian plays. You'll find some of that stuff in the various archives because most of it which obviously wasn't personal was just too good to leave out. Look for the file SILLY.SONGS which has a song about putting bologna up your nose. ) Then, after backing up, I dragged the entire enclosing folder to a ProDOS volume so the Finder would prompt me to rename each of the offending files. There were about 1500 of them. :( Renaming all the files took about two and a half hours of typing, but then they were all on a ProDOS volume. All that needed to be done was run 'sclist' on all the $FA files and 'textify' on all the text files. I had to get some help from Dave on this one, because it uses Davex's incredibly useful but seriously damaged "=" command. If you type this in Davex: = /hd/system/desk.accs/=:cda "A CDA file is =" You get output like this: A CDA file is NiftyList.CDA A CDA file is Exerciser.DA A CDA file is GSOS.Snooper etc. It echoes the string between quotes once for each file that's described by the second parameter (a wildcard that matches all files of type CDA in this case), substituting the matching file for any "=" in the quoted string. So, using "> exec1" to redirect to file "exec1" and therefore create an exec file, we did: "> exec1 ; = =:dir "> exec2 ; # =/Dos 3.3/# ""> temp/# ; sclist =/Dos 3.3/#:int""" This creates an exec file that looks like this: >exec2; = AAL.Jan.87/Dos 3.3/= "> temp/= ; sclist AAL.Jan.87/Dos 3.3/=:int" >exec2; = AAL.Feb.87/Dos 3.3/= "> temp/= ; sclist AAL.Feb.87/Dos 3.3/=:int" >exec2; = AAL.Mar.87/Dos 3.3/= "> temp/= ; sclist AAL.Mar.87/Dos 3.3/=:int" (at least, once you go into a word processor and change all the "#" into "=" because you don't want them substituted the first time.) With a few changes, this created a huge exec file that had the sclist command for each file that needed to be modified, listing it into a temp directory and then replacing the original file. In fact, the command line for each file was too large for the "=" command to do it without running out of room, so I used '%%" to hold the copy commands and replaced them in the MPW editor with the "move -f" command in Davex. I also used MPW to remove the "(no files selected)" lines for directories that were empty -- it made the script logic much easier to have an empty ProDOS directory even if there were no ProDOS files, and ShrinkIt won't include it when we archive it. Getting the scripts ready took a few hours, and they took a few more hours to run, but when they were done -- a month after we started this on Steve's trip out here -- I had a ProDOS folder with all the issues, source code and other files ready for public consumption and viewable by standard text editors, like Apple Writer available in A2. (In fact, Apple Writer is what Bob used to publish the issues each month.) Since then I've archived and uploaded the first 24 issues, and the other 68 will be coming as soon as we're sure everything's fine with these issues. With all the automatic stuff we did to make this huge task manageable, there are bound to be some mistakes. If you find one, just ask and we'll try to upload a corrected version. For this reason, we're holding back on collections of years or all issues for a while so we don't have to reupload them if there are problems discovered right away. (I've looked at most of what's been uploaded and I saw no problems, but there's a chance there was an EXEC file that got prematurely chopped off, or a real Integer BASIC program that got turned into a text file as if it were an S-C file. If you're the first person to find and post about a particular error, I'll give you a $6 GEnie credit.) This was a mammoth process and I'm glad it's mostly over, but I have no guilt left about A2Pro having exclusive online distribution. We went to a lot of work and effort to provide these great magazines for you folks and we want you to remember that we go the extra mile to bring this stuff to you. More stuff like this is coming in the very near future, too. :) I have to thank, in no particular order: Steve Gunn, Dean Esmay, Tom Weishaar, Dave Lyons, Jim Murphy, Bryan Pietrzak, Tim Tobin, Todd Whitesel (who will be checking the integrity of all 92 archives as they're uploaded) and, of course, Robert Sander-Cederlof, for making all this extreme pain possible. :) --Matt (M.DEATHERAGE [A2Pro Leader], CAT1, TOP19, MSG:1/M530) CLARIFICATION ON CREDIT FOR AAL PROBLEMS >>> SOFTDISK.INC [Bryan Zak] """""""""""""""""""""""""""""""""""""""" > That's also a pretty nifty idea about "paying" for anyone that finds a "bug" :) That's such a broad paraphrase I feel I should clarify. :) I'll give a $6 GEnie credit if you find a problem in an AAL issue that we feel requires us to reupload the issue, as long as you're the first one to report it. Reports posted here will take precedence over those received in mail. If your report helps us find problems in other issues, we can fix those at the same time and that doesn't mean you'll get $6/issue we fix. There are limits to the generosity of someone who renamed 1500 files. :) --Matt (M.DEATHERAGE [A2Pro Leader], CAT1, TOP19, MSG:3/M530) APPLE ASSEMBLY LINE TOUR - INTRODUCTION During the following weeks (or """"""""""""""""""""""""""""""""""""""" months, however long it takes), I'll be featuring two issues of Apple Assembly Line each week in this topic. They'll be posted here, one issue at a time, twice a week. The purpose of this tour is to show those of you on the "installment" download plan which ones are recommended for you to download this week, and let you know just what it is you're downloading :) In the tours, I'll be providing directory listings of these folders, and explaining the purpose of certain files. I will NOT be giving away any content of the articles, or source code, because of course, you have to download them to find out :) Each issue in A2Pro's release of Apple Assembly Line contains up to three folders: ARTICLES: Text files with the articles as printed in AAL that month. Articles were written using Apple Writer and still have some Apple Writer formatting commands in the files. Dos 3.3: Source and object code files from the DOS 3.3 parts of disks, copied to ProDOS disks and archived PRODOS: Source and object code files from the ProDOS parts of disks, when available. The first bunch will not have the PRODOS folder, because they only contained DOS 3.3 information. It is also worth noting that the source code provided was extracted from the S-C Assembler format, and will need modifications to suit your assembler before you can use it. Refer back to message 1 in this topic for more details on how it was converted. _ |_)ave |\/|iller (A2Pro Promo Guy) (JUST.DAVE [m530 daily!], CAT1, TOP19, MSG:4/M530) APPLE ASSEMBLY LINE TOUR - OCT 80 VOL 1, NO 1 This file is in Library 22, """"""""""""""""""""""""""""""""""""""""""""" AAL.OCT.80.BXY, file #3328. This was the premier issue of Apple Assembly Line. Quoting from the "Front Page" Article: Welcome to the premier issue of the Apple Assembly Line! This new monthly newsletter is dedicated to the many Apple owners using assembly language, or who would like to learn how. Articles will include commented disassemblies of Apple ROM routines, DOS, and other commercial software; how to augment and modify existing products; beginner's lessons in assembly language; handy subroutines every programmer needs in his tool kit; and many more. Here's the directory layout for AAL.OCT.80: (Note that there was no ProDOS information supplied in the first issues) ARTICLES/ FRONT.PAGE Introduction and cover page ADD.SUB.ONE A tutorial on efficient ways to increment and decrement multiple-byte values GEN.MSG.PRINTER Documentation for the S.MSG.PRINTER source LC.FOR.SCASM Documentation for the LOWERCASE.ADAPT source HW.ERR.6502 Description of an error found in ALL 6502 chips (it WAS fixed in the 65C02, but it's nice to know if you plan on backward compatibility) NEW.PRODUCTS A catalog of new products from S-C SOFTWARE (well, they were new at the time :) DOS.3.3/ S.MSG.PRINTER A very powerful subroutine for formatting messages on the screen. LOWERCASE.ADAPT A patch for the S-C Assembler II v4.0 to allow it to use lower-case on the II+ with a Paymar Lower-Case Adapter My personal favorite from this issue is the message formatter. It really helps to compact the data used by text in your programs (and could probably even be rigged to work in 16-bit programs too, but would have to preproccess the data before sending it to the tools in this case) and similar methods were eventually used by programs such as ProTERM. For more information on Your Tour of Apple Assembly Line, see message 4 in this topic. For more information on the Apple Assembly Line project as a whole, see message 1 in this topic. I hope you enjoy this issue! _ |_)ave |\/|iller (A2Pro Promo Guy) (JUST.DAVE [m530 daily!], CAT1, TOP19, MSG:6/M530) [EOA] [DEV]////////////////////////////// DEVELOPER'S CORNER / ///////////////////////////////// News from the A2Pro Online Developers """"""""""""""""""""""""""""""""""""" By Jim B.Couch [J.COUCH2] >>> ONLINE SUPPORT IN A2PRO <<< """"""""""""""""""""""""""""""" CAT TOP COMPANY === === ======= 29 INDEPENDENT DEVELOPERS ONLINE 2 About DYA/DigiSoft Innovations Online 8 About Simplexity Software Online 14 About Quality Computers Q-LABS Online 20 About DreamWorld Software Online 26 About METAL/FV Software Online 32 About Kitchen Sink Software Online 30 PROCYON, INC. 31 SOFTDISK PUBLISHING 32 MORGAN DAVIS GROUP (MDG) 33 GS+ MAGAZINE 34 JEM SOFTWARE 35 LUNAR PRODUCTIONS 36 THE BYTE WORKS Each month this column feature highlights and news from various developers who provide support via A2Pro. >>> NEWS FROM THE INDEPENDENT DEVELOPERS <<< """""""""""""""""""""""""""""""""""""""""""" TWILIGHT II FORMAT SPECS AVAILABLE At last, the long awaited Twilight II """""""""""""""""""""""""""""""""" Generation 2 Module Format specifications are available! The full documentation on how to write effect modules for Twilight II, DigiSoft Innovations' hot new Apple IIGS screen saver is now available in the A2Pro Library, file #3319! Sample module source code and Twilight II IPC documentation is coming soon! Please post all comments and questions in the appropriate DigiSoft Innovations tech topics right here. Thanks, Jim Maricondo DigiSoft Innovations (DYA [Jim:DigiSoft], CAT29, TOP3, MSG:8/M530) WRITING TWII MODULES SEMINAR SCHEDULED FOR KANSASFEST Preparations are """"""""""""""""""""""""""""""""""""""""""""""""""""" under way for our "Fun & Easy: Writing Twilight II Modules & Savvy Programs" seminar to be held at KansasFest 1993. If you're interested (or potentially interested) in Twilight II from the programmer's perspective, please attend! We will be releasing the Twilight II sample source code as well as the Twilight II IPC information. Be there! :-) < = @