TweetFollow Us on Twitter

Dec 90 Mousehole
Volume Number:6
Issue Number:12
Column Tag:Mousehole Report

AFX and SuperDrives

By Larry Nedry, Mousehole BBS

From: Gandalf

Re: SuperDrive problem

I’ve had some weird problems with my SuperDrive (SE/30). It wouldn’t eject the disk when requested (by the software) to do so, and, after the failed eject, it would attempt to remount it. But the access speed reduced to a crawl!!! it would work, but in slow-motion. Almost 30 seconds for displaying the desktop, and minutes for launching any small applications.

The emergency cure was having the paper clip at hand, installing SoundMaster to signal the ejects, and at the sound, give the drive a hand at ejecting the disk. Reinserting after this led to normal mount, not snail-speed.

As a side effect, since the problem aroused, it would also fail to read DOS drives, be it from DOS mounter, SoftPC or Apple File Exchange.

I tried swapping the eject motor for one from another SuperDrive, and that didn’t fix the problem.

What should I do? (by myself, not a dealer please!).

From: Chuckerp

Re: SuperDrive problem

Gandalf-- had the exact same problem, found the answer, it’s easy!

Absolutely it will make you crazy, no way to stop it except the paperclip... it took many days of pleading to find out that:

The default action is for EVERY TRANSLATOR to examine EVERY FILE on the DOS diskette to see if it can translate it, WHEN YOU MOUNT THE VOLUME. This crazy default means that when you buy some extra translators (as I had done) you can have up to (say) 50 different programs run against every file on the diskette looking for God only knows what! The mount time can literally be hours!

The fix is: load Apple File Exchange, insert a blank diskette, FORMAT the diskette as MS-DOS, then “tear off” the “MSDOS TO MAC” menu.

Uncheck every one of the items in the menu and then SAVE the EXCHANGE SETTINGS under the FILE menu. Thereafter, restore the exchange settings as the first thing you do, or on the most recent updates of AFX, double click on the exchange settings file to restore them (early version didn’t do this properly).

Now insert your DOS diskette and see it mount in a few seconds.

From: Hal

Re: Bypass Chooser

I am responding to your query for a way to change between two printers from within an application. I have written some externals for 4th Dimension which do just that. I realize that this type of feature violates the Apple User Interface Guidelines, but there are ways that this type of feature can be implemented without removing any control the user may have or want. For instance, these externals were designed so that the user could set up a list of reports to be printed and a list of printers to print them to and still print them all in a single batch process. The user still retains full control over which printer gets used when and for what, but he is not restricted by the Chooser interface. Anyway...

The printer type is stored in the resource ‘STR ‘ with ID = -8192 in the system file. The currently selected printer is stored in the resource file named in this string. It is kept in the ‘PAPA’ resource ID = -8192 of this file in the system folder. This resource contains the device name, the device type, zone, and network address. In the case of non-AppleTalk printers, this resource doesn’t even exist (and doesn’t need to). The device name, type and zone are standard Pascal strings except that only the space that is needed for each string is used. The next string follows immediately after the last character in the previous string. The device address is a LongInt which follows immediately after the device zone. The device address is obtained by doing a named look up over the AppleTalk network. I found an example of how to do this and went from there.

I am willing to send you a copy of my source files, but I would like to take some time to clean them up a bit. This source will consist of two externals which must be used together in a 4D database in order to switch between printers. I can include this database if you have 4D. If you want me to send you the source, just let me know.

P.S.Another alternative to the FKEY which was suggested to you is to use QuicKeys 2. QuicKeys 2 has several extensions now, one of which is called Choosy and allows you to select a print with a QuicKey.

From: Derek

Re: HERMES10

I think HERMES10 is the best new bbs out there, but I now hear the author doesn’t want to support it anymore.. I have no idea if this is true, but if so this is bad news.. cause I really like this bbs and been thinking of putting up a bbs with HERMES10.

From: Derek

Re: BBS Writing...

I been looking at the available bbs programs out there and decided that the only way I can get the features I want in a bbs is to write one myself. What I would really like to do is modify an existing one. Is there any bbs programs that have the code in the public domain? Some programs I have looked at are real good but out of date, and the authors no long support them.

Any help would be really appreciated. Also if someone is working on one and looking for a beta site. I’d really like to help out. Before I got my Macintosh, I used to run a bbs for 2 years I wrote on the Apple //e. And really am eager to put up a bbs on the Mac.

From: Ted

Re: Where’d my bitmap go?

Hey guys (and gals)...

I have a question I hope someone can help me with. I have some code that draws an image on the Mac screen, and then I copy a portion of the screen to a bitmap for placement on my screen at a later time. I can use CopyBits from the initial procedure and everything works fine, but if I leave that procedure, my bitmap data becomes garbage. I have tried making the variable global to the entire project, I have tried passing the variable from one procedure to the next till I need it again, I have tried giving a handle to the variable, locking the handle immediately, and then not unlocking it till I quit the application. nothing seems to work. I have other projects that uses bitmaps successfully, no problems. But this one has me baffled. I hope someone out there has run into this before, and knows of a fix, or at least something else I can try. I am at a total loss for explanation.

I have a Mac IIcx, System 6.0.4, no inits, and Lightspeed Pascal 3.0.

From: Wlc

Re: MPW vs THINK

If you haven’t already found out here are some things I’ve discovered about the Think vs. MPW question: Think is A LOT faster. MPW, especially when doing C++/MacApp stuff is quite slow (and a memory hog to boot! you’ll need 3MB minimum to do MacApp/C++ work.) Think gets along fine in 2.5MB

MPW is very expensive: $400 for the MPW/C bundle, $175 for C++, and another $275 for MacApp. $850.00 is pretty steep for most of us but could be a business expense for some.

From: Donarb

Re: TCL question

The code for opening a window when the program starts up is located in CApplication’s method StartUpAction. To get rid of this behavior you would have to create a new method in CStarterApp.c. Just remove the line that starts: if (numPreloads...).

From: Gord

Re: B-Tree libraries

Has anybody had experience with the C-Tree or C-Index B-Tree libraries??

From: Mcmatt

Re: Saving TEStyle stuff

I am trying to save a text edit record and its associated style record to disk for later access. I have no examples as to how to do this, and I was wondering if there was anyone out there who does. I understand how to do this for the old type text edit, but am unsuccessful with the new stuff. Any help would be appreciated!

From: Istewart

Re: Pattern Alignment Question

I’ve just bought a Mac. I’m using Think C 4.0; I’ve got Inside Macintosh I-V, most of the technical notes, and a borrowed copy of Macintosh Programming Primer (Dave Mark & Cartwright Reed.)

I’m working on the EventTutor example from that book. This has a window that scrolls up continuously, listing the events that the program receives (shades of glass teletype), and another window displaying a picture. I was curious to see how the update region was maintained during scrolling when the window was partially obscured by another.

To see where the update region was, I added a FillRgn after the ScrollRect to fill the update region with the “gray” pattern. This worked sort-of OK, and verified that all the various areas uncovered by the scroll were indeed added to the update region. The glitch was in the gray pattern itself; each scroll operation in this program scrolls the screen up by a constant 15 pixels; this seemed to cause the 8x8 bit pattern to be misaligned with the previously filled areas.

While not directly related to what I was trying to find out (almost everything!) it seemed to me that there had to be a simple way to handle this. I searched through Inside Mac, for any references to alignment of patterns (or/and pens) and came up with nothing. I decided to experiment with SetOrigin, this being the only likely-looking area.

After a bit of trial and error (SetOrigin works relative to portBits.bounds, for instance), I got the result I wanted. I basically offset the origin by a value (modulus 8) that caused the coordinates to align correctly with the pattern; I kept a record of the offset and then applied this to all coordinates that I specified for drawing in the window.

I used modulus 8 on the offset because the continuous scrolling up would soon overflow the 15-bit limit on the coordinate system, which may cause other problems!

Now, what I’m hoping someone can tell me ... is this the way to do it?? This method seems to work OK within this simple program, but could it cause more problems later? For instance, there’s a warning (I-314) that the origin needs to be (0,0) for the Control Manager to work properly. Obviously, I could just change the origin for the duration of the drawing operation that needs to be aligned, and then set it back (this would also simplify other operations, I guess). Are there any other pitfalls using this technique?

One alternative (that I don’t really like) would be to rearrange the pattern itself.

So, what’s the usual method of handling this situation (other than ignoring it, of course!!)?

Another (probably dumb) question:

Why doesn’t the background of the window get set to “bkPat” when the window is initially drawn, or when part of it is exposed? The ScrollRect and EraseRect use this pattern, but I can’t find any documentation on what happens to these other regions. They just seem to get initialized to white ... which is just a waste of time if the next thing I have to do is overwrite them with another pattern ...

From: Derek

Re: Tools...

I been doing some small programming on the Mac in C, and want to work on a major project, but do not have all the tools and experience in C. Are there any good libraries that would be very helpful in writing a application? I would like some that have some simple data base functions and also some communication functions.

From: Tomcat

Re: Greying out popup menus

A quick way to do this is to ResEdit yourself another userItem in the DITL resource of your dialog. It should physical lay over top of the current pop-up menu and title. THIS new userItem should be what you send to DisableItem in your code. You should be successful using this method.

From: Thehulk

Re: CtoPstr

CtoPstr does the conversion inline. If you use the same string again in your C program you have to change it back to a C string using PtoCstr.

From: Csb

Re: TIFF FILES

TAG... YOU’RE IT!! CAN ANYONE TELL ME WHERE I CAN GET SOME INFO ON TIFF FILE FORMATS ETC??? THANK YOU AND GOOD NIGHT

From: Handres

Re: Resetting the Parameter RAM

Does anyone know how I force a reset from any application (by a key-combination ?) to the Parameter RAM to get back the initial value of 9600 Baud for portA and portB fields in the SysParmType record ?

Thanks for help!

From: Johnbaro

Re: real-time animation

Hi. I’m new here. I was told that MouseHole is one of the best places to get Mac technical info, so here’s my problem: I’m trying to do some simple animations with large color images in real time. Palette animation looks like the best way to go - it’s noticeably faster than offscreen bitmaps in this case. The problem is that it’s a little too slow.

It takes about 40-45 msec to execute a call to AnimatePalette with a 256-color palette on my IIcx (that’s 3 video frames!). I could live with this speed for some things, but I’m doing research on the visual system and it’s important that I know exactly what’s on the screen at all times. My question is: What happens during that 45 msec?

Is the screen continuously updated over 3 frames or are other things being done in the background and the screen is then redrawn during the last 15-msec frame? If it takes 3 frames to redraw the screen then a moving image will “break apart”, and that’s no good (it doesn’t appear to be breaking apart, but it’s too fast to tell). I would also like to know if a faster machine and/or a QuickDraw accelerator would improve the speed of this particular operation? Would it be possible to get it down to the frame rate? Any info would be greatly appreciated.

From: Jdinh

Re: script manager

Hi, I am trying to set up a foreign language font that takes advantage of the Script Manager. IM vol 5 refers to a Script Manager Developer package that APDA no longer distribute. Can anyone tell me where I can find information regarding: font script, script interface system, key script, and double-byte character? Is key script the same as the KCHR resource? Thanks

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Latest Forum Discussions

See All

Tokkun Studio unveils alpha trailer for...
We are back on the MMORPG news train, and this time it comes from the sort of international developers Tokkun Studio. They are based in France and Japan, so it counts. Anyway, semantics aside, they have released an alpha trailer for the upcoming... | Read more »
Win a host of exclusive in-game Honor of...
To celebrate its latest Jujutsu Kaisen crossover event, Honor of Kings is offering a bounty of login and achievement rewards kicking off the holiday season early. [Read more] | Read more »
Miraibo GO comes out swinging hard as it...
Having just launched what feels like yesterday, Dreamcube Studio is wasting no time adding events to their open-world survival Miraibo GO. Abyssal Souls arrives relatively in time for the spooky season and brings with it horrifying new partners to... | Read more »
Ditch the heavy binders and high price t...
As fun as the real-world equivalent and the very old Game Boy version are, the Pokemon Trading Card games have historically been received poorly on mobile. It is a very strange and confusing trend, but one that The Pokemon Company is determined to... | Read more »
Peace amongst mobile gamers is now shatt...
Some of the crazy folk tales from gaming have undoubtedly come from the EVE universe. Stories of spying, betrayal, and epic battles have entered history, and now the franchise expands as CCP Games launches EVE Galaxy Conquest, a free-to-play 4x... | Read more »
Lord of Nazarick, the turn-based RPG bas...
Crunchyroll and A PLUS JAPAN have just confirmed that Lord of Nazarick, their turn-based RPG based on the popular OVERLORD anime, is now available for iOS and Android. Starting today at 2PM CET, fans can download the game from Google Play and the... | Read more »
Digital Extremes' recent Devstream...
If you are anything like me you are impatiently waiting for Warframe: 1999 whilst simultaneously cursing the fact Excalibur Prime is permanently Vault locked. To keep us fed during our wait, Digital Extremes hosted a Double Devstream to dish out a... | Read more »
The Frozen Canvas adds a splash of colou...
It is time to grab your gloves and layer up, as Torchlight: Infinite is diving into the frozen tundra in its sixth season. The Frozen Canvas is a colourful new update that brings a stylish flair to the Netherrealm and puts creativity in the... | Read more »
Back When AOL WAS the Internet – The Tou...
In Episode 606 of The TouchArcade Show we kick things off talking about my plans for this weekend, which has resulted in this week’s show being a bit shorter than normal. We also go over some more updates on our Patreon situation, which has been... | Read more »
Creative Assembly's latest mobile p...
The Total War series has been slowly trickling onto mobile, which is a fantastic thing because most, if not all, of them are incredibly great fun. Creative Assembly's latest to get the Feral Interactive treatment into portable form is Total War:... | Read more »

Price Scanner via MacPrices.net

Early Black Friday Deal: Apple’s newly upgrad...
Amazon has Apple 13″ MacBook Airs with M2 CPUs and 16GB of RAM on early Black Friday sale for $200 off MSRP, only $799. Their prices are the lowest currently available for these newly upgraded 13″ M2... Read more
13-inch 8GB M2 MacBook Airs for $749, $250 of...
Best Buy has Apple 13″ MacBook Airs with M2 CPUs and 8GB of RAM in stock and on sale on their online store for $250 off MSRP. Prices start at $749. Their prices are the lowest currently available for... Read more
Amazon is offering an early Black Friday $100...
Amazon is offering early Black Friday discounts on Apple’s new 2024 WiFi iPad minis ranging up to $100 off MSRP, each with free shipping. These are the lowest prices available for new minis anywhere... Read more
Price Drop! Clearance 14-inch M3 MacBook Pros...
Best Buy is offering a $500 discount on clearance 14″ M3 MacBook Pros on their online store this week with prices available starting at only $1099. Prices valid for online orders only, in-store... Read more
Apple AirPods Pro with USB-C on early Black F...
A couple of Apple retailers are offering $70 (28%) discounts on Apple’s AirPods Pro with USB-C (and hearing aid capabilities) this weekend. These are early AirPods Black Friday discounts if you’re... Read more
Price drop! 13-inch M3 MacBook Airs now avail...
With yesterday’s across-the-board MacBook Air upgrade to 16GB of RAM standard, Apple has dropped prices on clearance 13″ 8GB M3 MacBook Airs, Certified Refurbished, to a new low starting at only $829... Read more
Price drop! Apple 15-inch M3 MacBook Airs now...
With yesterday’s release of 15-inch M3 MacBook Airs with 16GB of RAM standard, Apple has dropped prices on clearance Certified Refurbished 15″ 8GB M3 MacBook Airs to a new low starting at only $999.... Read more
Apple has clearance 15-inch M2 MacBook Airs a...
Apple has clearance, Certified Refurbished, 15″ M2 MacBook Airs now available starting at $929 and ranging up to $410 off original MSRP. These are the cheapest 15″ MacBook Airs for sale today at... Read more
Apple drops prices on 13-inch M2 MacBook Airs...
Apple has dropped prices on 13″ M2 MacBook Airs to a new low of only $749 in their Certified Refurbished store. These are the cheapest M2-powered MacBooks for sale at Apple. Apple’s one-year warranty... Read more
Clearance 13-inch M1 MacBook Airs available a...
Apple has clearance 13″ M1 MacBook Airs, Certified Refurbished, now available for $679 for 8-Core CPU/7-Core GPU/256GB models. Apple’s one-year warranty is included, shipping is free, and each... Read more

Jobs Board

Seasonal Cashier - *Apple* Blossom Mall - J...
Seasonal Cashier - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/191170/winchester-va-united-states) - Apple Read more
Seasonal Fine Jewelry Commission Associate -...
…Fine Jewelry Commission Associate - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/191170/winchester-va-united-states) Read more
Seasonal Operations Associate - *Apple* Blo...
Seasonal Operations Associate - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/191170/winchester-va-united-states) - Read more
Hair Stylist - *Apple* Blossom Mall - JCPen...
Hair Stylist - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/191170/winchester-va-united-states) - Apple Blossom Read more
Cashier - *Apple* Blossom Mall - JCPenney (...
Cashier - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/191170/winchester-va-united-states) - Apple Blossom Mall Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.