TweetFollow Us on Twitter

Feb 95 Dialog Box
Volume Number:11
Issue Number:2
Column Tag:Dialog Box

Dialog Box

By Scott T Boyd, Editor

EvenBetterBusError Again?

Your printed copy of EvenBetterBusError in the December issue has a bug. Your constant SizeOfCodeBlock is computed to include only the code, but then is used as if it contained both the code and the constant BuggyCodeWroteToNil. The effective address of the PEA just before _DebugStr in the VBL task is outside the system heap block you obtained with _NewPtr.

Check it out. The effect is that after legitimately dropping into the debugger, one might see almost anything as the debugging string, hardly helpful!

Fix it by moving the EndOfCodeBlock label after the DC, not before. Does your assembler complain about labels with no contents? Fix that by putting another dummy DC after EndOfCodeBlock.

I wish we could ignore the dumbbells who claim their bugs are caused by the detection mechanism, but what if one needs their software!?!

- Emerson Mitchell, 72257.2213@compuserve.com

[Yes, indeed, it’s a bug. It’s also missing an ALIGN to get it on a nice boundary. That’ll teach me to assemble and link without actually installing and running. Another lesson learned. Thanks for the correction. As for the dumbbells, we can’t fix them, but a whole lot of folks now know to use EBBE when testing software (theirs and others). The “culprit” that I wrote about has already rewritten chunks of their product and has a new appreciation for low-level debugging tools. If you see other software that could use fixes along these lines, please drop us a note - Ed stb]

This Is California, And It’s 1994

Scott, 14.4K Internet access? Why bother, when PacBell will install an ISDN line in your home for less than $100, and companies like Internex will give you ISDN access for $49/month?

That’s what I did. With an Ascend router, I get ISDN into my local Ethernet, and we both have high speed access. Whee!

- David Ramsey, ramsey@be.com

[That sounds terrific, but I want to host my own Internet services (Web server, ftp site, and so forth). I can do those now, albeit slowly, with my constant 14.4K connection. A constant ISDN connection in this area would run more than three times what I’m paying now. ISDN equipment costs substantially more than my cheap modem, too. Ascend routers get you up and over the $1000 mark pretty quickly. Of course, these reasons don’t mean I’m not jealous! - Ed stb]

Another Bug?

I just discovered a nasty “gotcha” in a tip I submitted to MacTech, which was printed a few months ago.

If you hack a folder alias with ResEdit to look as if it were an alias to the Desktop Folder, don’t ever ask Finder to “Get Info...” on the hacked alias and then try to “Find Original.” If you do, Finder crashes; dramatically or quietly, depending on its mood at the time.

I hope this doesn’t mean I have to give back the “tip of the month” money for that one, ’cuz I already spent it!

- Lee David Rimar

FTP’s A Good Idea, But

I’d like to thank you for maintaining an ftp-site, and a net-presence in general. I would, however, encourage you to seek a mirror site. I’ve had very little luck connecting to ftp.netcom.com. And most of the few times I have been able to connect, the response time has been unbearably slow.

- Robert Fisher, malirath@zilker.net

[We don’t know what’s up with Netcom, but we’re not happy with it either. We’ll be getting our own site online sometime soon. Thanks for the suggestion about a mirror site - we’ll keep you posted - Ed stb]

Develop and MacTech Editors Read Each Other

In response to Steve Kiene’s letter in the December issue:

I enjoyed Steve Kiene’s well-written letter to MacTech in the December issue - even though I’m the editor of Apple’s own technical journal, develop. We try not to make develop a Stars and Stripes, feel-good magazine either, although we do need to push the company’s technology direction a bit to avoid incompatibilities for developers down the road.

My forthcoming editorial in Issue 21 of develop is on the subject of my own emotional attachment to the Mac, so I especially enjoyed the paragraph on your similar attachment. I hope your attachment remains - and that you’re a develop reader :- )

Regards,

- Caroline Rose, CROSE@applelink.apple.com

List Versus Object In Smalltalk

Kevin O’Neill wrote:

I managed to get the time to read your article in MacTech last night. It was great and I hope to see more.

I’d like to know more about how you decided to use a list to store the drag data rather than an object of a specific class. I found myself flipping back to the stop where you defined the list so that I could be sure what was being referred to in the various ‘data@x’ statements.

Actually it turns out that we should have used a subclass of <List> which we call a <DragPackage> class. At the time it wasn’t clear whether it would be a private data structure for use among a few objects, or whether it would have a public/client API. Since the time that article was written we have concluded that there really should be some behavior attached to the drag-data to enable it to serve a more general usage.

:-) That was good instinct/observation on your part...

Thanks for the comments and feedback.

- Dave S., quasar@qks.com

EvenBetterBusError Yet Again (EBBEYA)

The wrath over EvenBetterBusError (Editor’s Page, November 1994) is directed to the wrong target. The typical Mac developer, struggling against all odds to earn a living from a platform intentionally restrained to single-digit shares of the business market, is not helped by the thought police yelling “bonehead” and “liar” at him. Anyone who says of a block of 68K code, “As you can see, it’s pretty simple” is well out of touch with the real world of business applications programming.

Rather than excoriate the poor developer, why not direct your flame towards the source of the problem, the tool developers? EvenBetterBusError is just one of a scattered set of poorly-documented, poorly-designed and poorly-distributed hacks, each of which is intended to address some gaping problem in Mac development tools. Why can’t the functions of all such debugging aids be bundled with the tools themselves, in a simple-to-use format? Why don’t more development environments automatically (or optionally) check for such detectable “nefarious acts” as using DisposeHandle on a resource, dereferencing NIL, or calling DisposeHandle twice? Why isn’t a simple, high-level form of Discipline standard with all languages? Finally, why do toolmakers treat source-level debugging as unmanly, and therefore of no interest? Some of these hacks give results in a machine level so low as to be useful to only a smattering of programmers - I guess that leaves the rest of us as “boneheads”.

Think Pascal was (as is) fairly good on some of these issues, so why have more recent environments taken steps backwards from that level of assistance? It should not be necessary for the beleaguered Mac developer to conduct a fishing expedition through CDs and online sources to find all of the hacks needed to fix the obvious omissions of the development environments.

- Kevin Killion Stone House Systems, Inc. shs@mcs.com

[Thanks for your excellent letter. A few thoughts came to mind while I was reading your letter, and here they are - Ed stb]

First, someone has (as you may have already noticed in the December issue) put a bunch of the tools together in the form of QC™. They brought together many of the tools, wrapped them together in a nice package, and are doing what they can to get them out to developers. At $100, it’s cheap at twice the price.

Second, I’ll cop to playing the role of thought police. Somebody has to do it. Apple sure isn’t, and, as you pointed out, neither is Symantec or Metrowerks. The aspersions were cast at a vendor who chose to blame the tool rather than address their serious, yet known bug. Ignorance is one thing, but blaming EBBE was a wrong thing to do.

In a followup conversation with that particular vendor, the product manager told me that he was “horrified” once he had read my editorial. The right thing has happened now - the product has been repaired, and we’re a little better off for them better understanding the situation, the available tools, and their responsibility to test their software with whatever tools are available.

Third, let’s not blame someone for the existing tools being poorly documented and poorly distributed. Why? Greg, Bo3b, and others kindly and generously donated tools. Those tools are available on every online service and on Apple’s CDs, as well as our online sites. Sure, their documentation isn’t great, but at least it exists to some degree. I’m sure you didn’t mean to put them down, but, having been there when these tools were written (and having written the beginnings of one of them myself), let’s praise them for not only making us aware of the problems, but also giving us tools (albeit crude) to address the problems.

Third-and-a-half, the three principal problems that DoubleTrouble, DisposeResource, and EBBE address are problems that we (the System 7 team at the time) realized were bigger problems than we had known during the System 7 effort. Greg wrote the tools after he had debugged hundreds of “incompatible” pieces of software. Sometimes it just takes a while to realize the need for a specific tool. Without his debugging efforts, we still wouldn’t have these tools.

Fourth, I totally agree that environment vendors need to provide more and better tools. Some vendors have. For example, QKS SmalltalkAgents knows about various classes of memory, allocates most things for you, and deallocates when your done. It’s nearly impossible to make some of these classic mistakes with an environment like STA.

Finally, I’d say that it’s time to put some blame on Apple. Isn’t it time that they develop a system which makes it nearly impossible to make these kinds of mistakes? Now that we’ve had a decade’s worth of experience, don’t we have a pretty good idea what the common mistakes and failure modes are? Couldn’t we find a way to eliminate some of them? QKS has. Dylan does. NeXT has. Sun is working on it. Taligent has put a lot of effort into it. When is Apple going to step out and take a leadership role in making the developer’s job easier, safer, and more rewarding?

- Ed stb

 
AAPL
$567.77
Apple Inc.
+43.02
MSFT
$39.86
Microsoft Corpora
+0.17
GOOG
$525.16
Google Inc.
-1.78

MacTech Search:
Community Search:

Software Updates via MacUpdate

Ember 1.5.1 - Versatile digital scrapboo...
Ember (formerly LittleSnapper) is your digital scrapbook of things that inspire you: websites, photos, apps or other things. Just drag in images that you want to keep, organize them into relevant... Read more
Cyberduck 4.4.4 - FTP and SFTP browser....
Cyberduck is a robust FTP/FTP-TLS/SFTP browser for the Mac whose lack of visual clutter and cleverly intuitive features make it easy to use. Support for external editors and system technologies such... Read more
TechTool Pro 7.0.3 - Hard drive and syst...
TechTool Pro is now 7, and this is the most advanced version of the acclaimed Macintosh troubleshooting utility created in its 20-year history. Micromat has redeveloped TechTool Pro 7 to be fully 64... Read more
MacFamilyTree 7.1.6 - Create and explore...
MacFamilyTree gives genealogy a facelift: it's modern, interactive, incredibly fast, and easy to use. We're convinced that generations of chroniclers would have loved to trade in their genealogy... Read more
EtreCheck 1.9.9 - For troubleshooting yo...
EtreCheck is a simple little app to display the important details of your system configuration and allow you to copy that information to the Clipboard. It is meant to be used with Apple Support... Read more
TeamViewer 9.0.28116 - Establish remote...
TeamViewer gives you remote control of any computer or Mac over the Internet within seconds, or can be used for online meetings. Find out why more than 200 million users trust TeamViewer! Free for... Read more
DiskAid 6.6.3 - Use your iOS device as a...
DiskAid is the ultimate transfer tool for accessing the iPod, iPhone or iPad directly from the desktop. Access data such as: music, video, photos, contacts, notes, call history, text messages (SMS),... Read more
Viber 4.1.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,... Read more
Apple iOS 7.1.1 - The latest version of...
The latest version of iOS can be downloaded through iTunes. Apple iOS 7 brings an all-new design and all-new features. Simplicity Simplicity is often equated with minimalism. Yet true simplicity is... Read more
1Password 4.3 - Powerful password manage...
1Password is a password manager that uniquely brings you both security and convenience. It is the only program that provides anti-phishing protection and goes beyond password management by adding Web... Read more

Latest Forum Discussions

See All

Pen & Ink Review
Pen & Ink Review By Jennifer Allen on April 24th, 2014 Our Rating: :: CONVENIENT ARTISTRYiPad Only App - Designed for the iPad Pen & Ink is an ideal way to sketch down some visual ideas or simply spark your imagination.   | Read more »
Sonic & All-Stars Racing Transformed...
Sonic & All-Stars Racing Transformed Now Free, to Add New Iconic Characters and Elements Posted by Tre Lawrence on April 24th, 2014 [ | Read more »
Soccer Rally 2 Review
Soccer Rally 2 Review By Carter Dotson on April 24th, 2014 Our Rating: :: GOALKEEPINGUniversal App - Designed for iPhone and iPad Soccer Rally 2 is the most serious vehicular soccer game ever created.   | Read more »
Galaxy Conquerors Review
Galaxy Conquerors Review By Jennifer Allen on April 24th, 2014 Our Rating: :: RETRO SHOOTINGUniversal App - Designed for iPhone and iPad Old school shooting is fun but inaccurate in Galaxy Conquerors.   | Read more »
Yomi Review
Yomi Review By Rob Thomas on April 24th, 2014 Our Rating: :: C-C-C-COMBO BREAKERiPad Only App - Designed for the iPad Round One – Fight! No quarters required for this iOS adaptation of a tabletop adaptation of the arcade fighting... | Read more »
Injustice: Gods Among Us Updated with Ne...
Injustice: Gods Among Us Updated with New Characters, Leaderboards, Gear, and Online Multiplayer Posted by Rob Rich on April 24th, 2014 [ | Read more »
Spin It Review
Spin It Review By Jordan Minor on April 24th, 2014 Our Rating: :: SPIN ME RIGHT ROUNDUniversal App - Designed for iPhone and iPad Spin It has a fine puzzle game model, but its execution lacks energy.   | Read more »
Productivity App NoteSuite is Having its...
Productivity App NoteSuite is Having its Biggest Sale Ever, Just for One Week Posted by Rob Rich on April 24th, 2014 [ permalink ] | Read more »
Wayward Souls Review
Wayward Souls Review By Carter Dotson on April 24th, 2014 Our Rating: :: CARRY ON, WAYWARD SONUniversal App - Designed for iPhone and iPad Wayward Souls is a roguelike-inspired action-RPG that sets a high bar for other games to... | Read more »
The Sandbox Gets Update, Receives New Ca...
The Sandbox Gets Update, Receives New Campaign and New Elements Posted by Tre Lawrence on April 24th, 2014 [ permalink ] Universal App - Designed for iPhone and iPad | Read more »

Price Scanner via MacPrices.net

Strong iPhone Sales Drive Apple Record March...
Apple on Wednesday announced financial results for its fiscal 2014 second quarter ended March 29, 2014. The Company posted quarterly revenue of $45.6 billion and quarterly net profit of $10.2 billion... Read more
Award-Winning NoteSuite Productivity App is $...
Minneapolis based Theory.io has announced an 80-Percent Markdown NoteSuite for iPad. NoteSuite helps users stay organized by capturing their notes, to-dos and documents in one organized place.... Read more
16GB 1st generation iPad mini available for $...
Radio Shack has a select number of refurbished 1st generation 16GB WiFi iPad minis available for $199.99 on their online store. Choose free shipping or free ship-to-store. We expect these to sell out... Read more
13-inch 2.5GHz MacBook Pro on sale for $100 o...
B&H Photo has the 13″ 2.5GHz MacBook Pro on sale for $1099 including free shipping plus NY sales tax only. Their price is $100 off MSRP. Read more
iPad Sales “Lull” A Reality Correction Of Unm...
I have lots of time for Jean-Louis Gassée, the former Apple Computer executive (1981 to 1990) who succeeded Steve Jobs as head of Macintosh development when the latter was dismissed in 1985. Mr.... Read more
Apple Makes OS X Betas Available To All – Wit...
Apple’s OS X Beta Seed Program, which lets you install the latest pre-release builds, try it out, and submit your feedback, is now open to anyone who wants to sign on rather than to developers and... Read more
Apple Releases iOS 7.1.1 Update
The latest iOS 7.1.1 update contains improvements, bug fixes and security updates, including: • Further improvements to Touch ID fingerprint recognition • Fixes a bug that could impact keyboard... Read more
Logitech Announces Thinner, Lighter, More Fle...
Logitech has announced an update to its Ultrathin for iPad Air, iPad mini and iPad mini with Retina display, improving the flexibility and design of its award-winning predecessor with an even thinner... Read more
Logitech Introduces Hinge, Big Bang and Turna...
Logitech has announced expansion of its tablet product line with three new cases – the Logitech Hinge, the Logitech Big Bang and the Logitech Turnaround – each for the iPad Air, iPad mini and iPad... Read more
WaterField’s Rough Rider Leather Messenger Ba...
WaterField Designs have announced the new 15-inch size of their popular Rough Rider leather messenger bag, a vintage-looking bag that combines Old West charm and ruggedness with distinctly modern... Read more

Jobs Board

*Apple* Solutions Consultant (ASC) - Apple (...
**Job Summary** The ASC is an Apple employee who serves as an Apple brand ambassador and influencer in a Reseller's store. The ASC's role is to grow Apple Read more
*Apple* Solutions Consultant (ASC) - Apple (...
**Job Summary** The ASC is an Apple employee who serves as an Apple brand ambassador and influencer in a Reseller's store. The ASC's role is to grow Apple Read more
Position Opening at *Apple* - Apple (United...
…customers purchase our products, you're the one who helps them get more out of their new Apple technology. Your day in the Apple Store is filled with a range of Read more
*Apple* Solutions Consultant (ASC) - Apple (...
**Job Summary** The ASC is an Apple employee who serves as an Apple brand ambassador and influencer in a Reseller's store. The ASC's role is to grow Apple Read more
*Apple* Inc. Research Data Specialist - Appl...
…of Worldwide Market Research & Intelligence. The team is responsible for conducting Apple branded consumer market research. It is also responsible for analyzing data Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.