TweetFollow Us on Twitter

Sep 92 Tips
Volume Number:8
Issue Number:5
Column Tag:Tips & Tidbits

Tips & Tidbits

By Neil Ticktin, Editor

This column is your opportunity to spread the word about little bits of information that you find out about. These tidbits can be programming related or they can be user tips that are particularly useful to programmers.

MacTutor will credit, in subscriptions or orders, $25 for every tip used, and $50 for the Tip of the Month. To submit a tip, send in a letter to the magazine.

Remember, AppleLink is our preferred communication method, but feel free to send something via America Online, GEnie or US Mail. If you do send snail mail, enclose a printed copy and a disk copy of the letter so that it does not have to be retyped.

Let us know what you think. Remember, this is your magazine. Try ‘em out and let us know...

Tip of the Month

When you have several applications running at once, and you hit the interrupt button, you will break into the application that happens to be executing at that time, which is not necessarily the one you want to debug.

To choose which application you break into, make sure that application is frontmost. Now hold down the mouse button somewhere over the menu bar (an empty portion will do), and with your other hand, press the interrupt button. You will end up in the desired application, somewhere in the middle of a call to MenuSelect.

Lawrence D’Oliveiro, Computer Services Dept

University of Waikato, Hamilton, New Zealand

MPW MAKE TIP #1

The Make tool in MPW differs from the UNIX original in that it only generates the build commands; it cannot execute them. Apple provides a script called BuildProgram, that invokes Make, captures the output in a temporary script file, and executes it. However, when you’re still at the stage of flushing out syntax errors from your code, it is quicker not to use BuildProgram. Instead, use Make, and capture its output in a temporary window, such as the Worksheet window. Select the generated commands and execute them.

When you hit a syntax error, find the compilation command where the error was encountered, and delete all the commands prior to this-that is, all the commands that were successfully completed. Find and fix the syntax errors in your source file. Now instead of reinvoking BuildProgram or Make, simply reselect the leftover build commands, and reexecute them. Continue in this fashion, deleting the completed commands each time you hit an error, until you’ve completed the build.

If you’ve got nothing else but build commands in the temporary window and you’re using MPW version 3.2 or later, you can quickly select the commands to be deleted, once you’ve found the beginning of the command where the error occurred, by typing command-option-shift-uparrow to select from the current position to the beginning of the file.

- Lawrence D’Oliveiro, New Zealand

MPW MAKE TIP #2

Many Makefiles are written with an initial rule that looks like this:

Everything ƒ Prog1 Prog2 Prog3

where Prog1, Prog2 and so on are the actual programs comprising the project. This is done so that if you invoke Make without any arguments, it will look for the first target by default, and putting this rule first will cause it to build the entire project.

However, if your project grows with more and more components, this becomes another rule that you have to remember to maintain in your Makefile. A more convenient technique is to invoke Make with the following command:

Make `Make -r`

The inner Make -r command returns a list of the “root” targets (that is, no other targets depend on these); the outer Make command builds all these targets. Now you can get rid of the Everything rule, and just keep adding new rules for the new components of your project, without having to worry about updating any existing rules.

- Lawrence D’Oliveiro, New Zealand

MPW BACKUP TIP #1

MPW’s Backup tool is very useful for backing up your projects, but things can get slightly complicated if there are too many files to fit on one disk. Without the -a option, Backup will only back up changed files; it won’t copy any files that aren’t already on the current backup disk.

But if you’ve been adding lots of files to your project, deciding which files should go onto which disks-and making sure you’ve backed them all up-can be too much trouble. You can make things much easier if you group your files into subfolders; just make sure that the contents of each subfolder will fit on one backup disk. Then you can use the command form Backup -a -r -level 1; the -r option means to check subfolders (and subfolders of subfolders, and so on), and -level 1 restricts the effect of -a (backup new as well as changed files) so it only applies to subfolders on down, not to files at the top level. This allows you to keep a handful of central files, such as your Makefile, at the top level, and they will only be backed up once.

If you have to move files from one subfolder to another, add the -d option to the Backup command; this will delete the moved files from their old subfolders on the backup disks.

Now, if Duplicate would only preserve the window positions of the icons it copies, my happiness would be complete...

- Lawrence D’Oliveiro, New Zealand

MPW BACKUP TIP #2

The following pair of commands will do a backup from the current directory onto a folder with the same name on a floppy disk in drive 1:

Set CurFolder "`Directory -q | 
 StreamEdit -d -e 
'/( :)*([¬:]*:)®1 / print ®1'`"

Backup -a -r -level 1 -from 
 : -to `Volumes 1`"{CurFolder}"

This uses the StreamEdit tool which was introduced in MPW 3.2. Put it on a custom menu somewhere in your UserStartup script, then you’ll never have to type it again...

- Lawrence D’Oliveiro, New Zealand

HIDING LAYERS FROM HYPERCARD

The following line of HyperTalk, executed from HyperCard 2.1, will hide the frontmost application:

DoMenu line 1 of menu "Application"

This works even if executed from a script running in the background! You can try other items in the application menu as well, but this doesn’t work for the “System Help” menu.

The same thing should also work from one of your own applications: call SystemMenu, passing it a menu ID of

-16489 (the application menu) and the appropriate item ID (e.g., 1 to hide the frontmost application, 2 to hide all but the frontmost, and 3 to show all applications).

- Lawrence D’Oliveiro, New Zealand

A 68040 Bug

A few months ago a rather large application I wrote started "hanging" on a Quadra 700. After poking around I tracked the problem to a small assembly language routine which is used to allow main thread and interrupt code to access the same linked list of messages.

The problem arises when the CAS2 instruction is used in the following form:

CAS2.l  Dn:Dn,D1:D0,(A0):(A1)

When the comparison fails, Dn gets updated from the second memory operand, (A1), instead of the first memory operand. Motorola has just verified the bug. A portion of Motorola's response, as relayed to me through DTS, says...

"I am responding to your question on the CAS2 instruction. You have indeed found a bug. Your analysis is correct.

If the compare registers for CAS2 are the same and the comparisons with the memory operands fail, then the FIRST memory operand should be stored in the data register, however, the 68040 incorrectly stores the second memory operand in the data register."

Note that this problem does not exist on the 68020 or the 68030.

- Bob Peters, Fermilab

Omega SANE backpatching!

I spent one entire Sunday to catch the bomb in this code:

(1) <if condition then>
(2)   <push a selector on stack>
(3) <else>
(4)   <push another selector on stack>
(5) _FP68K

On the first call Omega SANE analyzes the code and finds that (4) and (5) constitutes a “normal” SANE call. So, in the name of optimization, those 6 bytes are replaced in runtime by a direct JSR to the actual SANE routine. Imagine the spectacular view on a later occasion when (2) and (5) are executed!

- Sigmund Tveit, Norway

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

OmniOutliner 4.6 - Organize your ideas,...
OmniOutliner is a flexible program for creating, collecting, and organizing information. Give your creativity a kick start by using an application that's actually designed to help you think. It's... Read more
Default Folder X 5.0.6 - Enhances Open a...
Default Folder X attaches a toolbar to the right side of the Open and Save dialogs in any OS X-native application. The toolbar gives you fast access to various folders and commands. You just click on... Read more
Adobe Creative Cloud 3.8.0.310 - Access...
Adobe Creative Cloud costs $19.99/month for a single app, or $49.99/month for the entire suite. Introducing Adobe Creative Cloud desktop applications, including Adobe Photoshop CC and Illustrator CC... Read more
MYStuff Pro 2.0.25 - Create inventories...
MYStuff Pro is the most flexible way to create detail-rich inventories for your home or small business. Add items to MYStuff by dragging and dropping existing information, uploading new images, or... Read more
Viber 6.2.0 - Send messages and make cal...
Viber lets you send free messages and make free calls to other Viber users, on any device and network, in any country! Viber syncs your contacts, messages and call history with your mobile device, so... Read more
Data Rescue 4.2.3 - Powerful hard drive...
Use Data Rescue to recover: crashed, corrupted or non-mounting hard drive deleted, damaged, or lost files reformatted or erased hard drive One powerful new feature found in Data Rescue 4 is... Read more
Microsoft Remote Desktop 8.0.34 - Connec...
With Microsoft Remote Desktop, you can connect to a remote PC and your work resources from almost anywhere. Experience the power of Windows with RemoteFX in a Remote Desktop client designed to help... Read more
Microsoft Remote Desktop 8.0.34 - Connec...
With Microsoft Remote Desktop, you can connect to a remote PC and your work resources from almost anywhere. Experience the power of Windows with RemoteFX in a Remote Desktop client designed to help... Read more
Data Rescue 4.2.3 - Powerful hard drive...
Use Data Rescue to recover: crashed, corrupted or non-mounting hard drive deleted, damaged, or lost files reformatted or erased hard drive One powerful new feature found in Data Rescue 4 is... Read more
Viber 6.2.0 - Send messages and make cal...
Viber lets you send free messages and make free calls to other Viber users, on any device and network, in any country! Viber syncs your contacts, messages and call history with your mobile device, so... Read more

Naruto Shippuden: Ultimate Ninja Blazing...
I'm not sure if it's possible to say you are an anime fan but also never have seen one episode of Naruto. If it is, then I resemble that remark, and if not, I offer a hearty apology. [Read more] | Read more »
5 mobile games that let you explore spac...
No Man's Sky hasn't exactly turned out to be everything it was promised. Though its core concept of exploring an unimaginably vast universe of different planets is an intriguing one, the execution has left many PS4 and PC gamers feeling like they... | Read more »
Mummy madness in new action game Tomb He...
Hot on the tail of Bump Hero, ZPlay is giving gamers another reason to get screen bashing with a brand new release. Tomb Heroes is a challenging action game in which you battle enemies in various tombs around the world. You can select from nine... | Read more »
Siralim 2 (RPG / Roguelike) (Games)
Siralim 2 (RPG / Roguelike) 1.0 Device: iOS Universal Category: Games Price: $4.99, Version: 1.0 (iTunes) Description: Siralim 2 is an old-school monster catching RPG. Summon and customize hundreds of creatures to fight for you as... | Read more »
Clean Text (Productivity)
Clean Text 1.0 Device: iOS Universal Category: Productivity Price: $3.99, Version: 1.0 (iTunes) Description: | Read more »
Gemini - A Journey of Two Stars (Games)
Gemini - A Journey of Two Stars 1.0.1 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0.1 (iTunes) Description: *** SPECIAL LAUNCH SALE: $2.99 (25% off) *** "A mesmerizing and unexpectedly emotional journey." -- Los... | Read more »
How to get four NFL superstars for your...
Even though you're probably well on your way to building a top notch squad for the new season in Madden NFL Mobile, let's say you could beef it up by adding Rob Gronkowski, Antonio Brown, Von Miller, and Todd Gurley to your roster. That's... | Read more »
Cartoon Network Superstar Soccer: Goal!!...
Cartoon Network Superstar Soccer: Goal!!! – Multiplayer Sports Game Starring Your Favorite Characters 1.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0 (iTunes) Description: Become a soccer superstar with your... | Read more »
NFL Huddle: What's new in Topps NFL...
Can you smell that? It's the scent of pigskin in the air, which either means that cliches be damned, pigs are flying in your neck of the woods, or the new NFL season is right around the corner. [Read more] | Read more »
FarmVille: Tropic Escape tips, tricks, a...
Maybe farming is passé in mobile games now. Ah, but farming -- and doing a lot of a other things too -- in an island paradise might be a little different. At least you can work on your tan and sip some pina coladas while tending to your crops. [... | Read more »

Price Scanner via MacPrices.net

Apple refurbished iMacs available for up to $...
Apple has Certified Refurbished 2015 21″ & 27″ iMacs available for up to $350 off MSRP. Apple’s one-year warranty is standard, and shipping is free. The following models are available: - 21″ 3.... Read more
Clearance 2015 13-inch MacBook Airs available...
B&H Photo has clearance 2015 13″ MacBook Airs available for $350 off original MSRP. Shipping is free, and B&H charges NY sales tax only: - 13″ 1.6GHz/4GB/128GB MacBook Air (MJVE2LL/A): $829... Read more
Check Apple prices on any device with the iTr...
MacPrices is proud to offer readers a free iOS app (iPhones, iPads, & iPod touch) and Android app (Google Play and Amazon App Store) called iTracx, which allows you to glance at today’s lowest... Read more
Save $120 with Apple refurbished Time Capsule...
Apple has certified refurbished Time Capsules available for $120 off MSRP. Apple’s one-year warranty is included with each Time Capsule, and shipping is free: - 2TB Time Capsule: $179, $120 off (not... Read more
9-inch 32GB iPad Pros on sale for $70 off MSR...
B&H Photo has 9″ 32GB WiFi Apple iPad Pros on sale for $70 off MSRP, each including free shipping. B&H charges sales tax in NY only: - 9″ Space Gray 32GB WiFi iPad Pro: $529 $70 off MSRP - 9... Read more
Mac minis on sale for up to $140 off MSRP
Adorama has Mac minis on sale for up to $100 off MSRP including free shipping plus NY & NJ sales tax only: - 1.4GHz Mac mini: $449 $50 off MSRP - 2.6GHz Mac mini: $649 $50 off MSRP Amazon has the... Read more
Back To School with OtterBox Essentials
Back to school means back to an environment that is tough on tech. OtterBox has the back to school essentials you need to keep tech safe from drops, bumps, scratches and hallway havoc. Check out the... Read more
VRS Design Releases New iPhone 7 Plus Case Li...
With a device as large and costly as the iPhone 7 Plus, it is primal instinct to protect it from potential damage. According to a study by SquareTrade in 2012, iPhone damages cost Americans roughly $... Read more
MacBook Airs on sale for up to $101 off MSRP
Amazon has 11″ and 13″ MacBook Airs on sale for up to $101 off MSRP for a limited time. Shipping is free: - 11″ 1.6GHz/128GB MacBook Air (model MJVM2LL/A): $798 $101 off MSRP - 11″ 1.6GHz/256GB... Read more
Apple certified refurbished iPad mini 4s avai...
Apple has certified refurbished iPad mini 4s now available for up to $120 off the cost of new models. An Apple one-year warranty is included with each iPad, and shipping is free. The following models... Read more

Jobs Board

*Apple* /Mac Support Engineer - GFI Digital,...
FI Digital, Inc. is currently seeking candidates for a full time Apple Support Engineer to add to our Maryland Heights, Missouri IT team. Candidates must be dynamic Read more
*Apple* Solutions Consultant - Apple (United...
Apple Solutions ConsultantJob Number: 51218534Pleasant Hill, California, United StatesPosted: Aug. 18, 2016Weekly Hours: 40.00Job SummaryAs an Apple Solutions Read more
*Apple* Solutions Consultant - Apple (United...
# Apple Solutions Consultant Job Number: 51443201 Mishawaka, Indiana, United States Posted: Aug. 25, 2016 Weekly Hours: 40.00 **Job Summary** As an Apple Read more
*Apple* Solutions Consultant - Apple (United...
# Apple Solutions Consultant Job Number: 51218354 Fredericksburg, Virginia, United States Posted: Aug. 18, 2016 Weekly Hours: 40.00 **Job Summary** As an Apple Read more
*Apple* Retail - Multiple Positions Birmingh...
Job Description: Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.