• MacTech Network:
  • Tech Support
  • |
  • MacForge.net
  • |
  • Apple News
  • |
  • Register Domains
  • |
  • SSL Certificates
  • |
  • iPod Deals
  • |
  • Mac Deals
  • |
  • Mac Book Shelf

MAC TECH

  • Home
  • Magazine
    • About MacTech in Print
    • Issue Table of Contents
    • Subscribe
    • Risk Free Sample
    • Back Issues
    • MacTech DVD
  • Archives
    • MacTech Print Archives
    • MacMod
    • MacTutor
    • FrameWorks
    • develop
  • Forums
  • News
    • MacTech News
    • MacTech Blog
    • MacTech Reviews and KoolTools
    • Whitepapers, Screencasts, Videos and Books
    • News Scanner
    • Rumors Scanner
    • Documentation Scanner
    • Submit News or PR
    • MacTech News List
  • Store
  • Apple Expo
    • by Category
    • by Company
    • by Product
  • Job Board
  • Editorial
    • Submit News or PR
    • Writer's Kit
    • Editorial Staff
    • Editorial Calendar
  • Advertising
    • Benefits of MacTech
    • Mechanicals and Submission
    • Dates and Deadlines
    • Submit Apple Expo Entry
  • User
    • Register for Ongoing Raffles
    • Register new user
    • Edit User Settings
    • Logout
  • Contact
    • Customer Service
    • Webmaster Feedback
    • Submit News or PR
    • Suggest an article
  • Connect Tools
    • MacTech Live Podcast
    • RSS Feeds
    • Twitter

ADVERTISEMENT
Volume Number:8
Issue Number:1
Column Tag:Mousehole

Mousehole Report

By Larry Nedry, Mousehole BBS Sysop

From: Jmoreno

Re: Problem with PBControl

I’m having trouble sorting out how PBControl works. I’m trying to use it to get the icon which is associated with a particular drive. I want to show the correct icon for HD’s and CD-ROM’s as well as the icon for floppies. Any help or hint will be appreciated.

From: Mrteague

Re: Problem with PBControl

What problems are you having with PBControl? I wrote a quick & dirty program the other day (and it worked first time - amazing <grin>) to do the exact thing you are trying to do (and more). Basically I refer you to TechNote #272. But you need to do a PBControl call with csCode = 21 (for the physical drive icon, or csCode = 22 for the physical media icon), and the pointer to the icon (note : ICON, not ICN# or anything else) will be returned in the csParam parameter (remember, some development systems have csParam as an array of integers, so you need to coerce the first 4 bytes of csParam into a Ptr - I think I used BlockMove). Also note that the icon comes from the driver SOFTWARE (whether it be in ROM or RAM or disk), and not all drivers support the call (you will probably get an error). Specifically, the Mac Plus will not return you an icon. Hope this helps.

From: Jmoreno

Re: Problem with PBControl

My problem is that can’t get the PBControl to work at all for my HD’s or CD-ROM drive. I get a error message which varies depending on how I fool around with the parameters. When I have the params set the way I think they are supposed to be I get a -56 error.

And yeah I know that THINK Pascal at least considers it a array of integers. I get around the by using this: handle (@myControlPBH.csparam)^)^ this gives a pointer w/o having to do a BlockMove. Could you post a sample call to PBControl that works for your HD?

From: Mrteague

FILE: Problem with PBControl

That advice I gave you was for floppy drives, and I wrote it in MPW C. Attached to this msg is an example of what you want, in MPW Pascal. I cut it out of a program I wrote a long time ago, but I believe it worked then.

From: Deep

Re: Graf3D

I have forgotten where Graf3D is documented. Does anyone else know? I realize that Graf3D is not a very fast way for 3D stuff, but I may want to “fool ‘round” with it. Thanks!

From: Johnbaro

Re: Graf3D

Graf3D is not officially documented or supported by Apple. After much searching I did manage to find 3 sources of info. (1) a 1988 MacTutor article (I don’t know the issue offhand), (2) since I was programming in Think Pascal, I tried the Symantec BBS (408-973-9598).

They have some sample code showing how to use the Graf3D routines. I also spoke to someone in their Tech support dept. who sent me a Tech Note they put out that documents Graf3D pretty thoroughly. (3) Through an Apple rep I was also able to obtain a document sent to developers several years ago that briefly describes Graf3D routines. Any one of these documents provides about the same info, so if you get a hold of one don’t waste time trying to track down the others. Hope this helps get you started. I’ve found that if your 3D plotting needs are fairly modest (line drawings only, speed is not crucial) Graf3D can be pretty handy.

From: HenryT

To: ** ALL **

Re: Souped up Quadra 900

A friend of mine modified his Quadra 900 by replacing the 50 mhz crystal with a 66 mhz crystal. And it seems to work just fine. This makes it a 33 mhz Quadra 900 (the 66 mhz is divided by two). He says it speeds up MPW compiles by another 20-30 percent. Has anyone else tryed this?

From: **Unknown**

Re: Empty Resource Creation

I have tried to create an empty resource in a small routine. I would like to do is open an empty resource from a program. Everytime I try to do this, it seems as though the handle is deallocated by some means. I have HLock’ed and HNoPurge’ed the handle so...The question is why won’t this piece of code work..any help is appreciated.

place = PtrToHand((Ptr)0,rsrc,1);
AddResource(rsrc,’MyRs’,9,”\p”);
theError = ResError();
if (theError == noErr)
WriteResource(rsrc);

From: Sysop

Re: Empty Resource Creation

You state that all you want to do is open an empty resource from a program. You also state that you can’t create an empty resource. You could use ResEdit to create one. Or you could do this:

rsrc = NewHandle(0L);
AddResource(rsrc, ‘MyRs’, 9, “\p”);
theError = ResError();
if(theError == noErr)
 WriteResource(rsrc);

To read the resource you can use GetResource or Get1Resource which will return a handle to the resource.

The reason you weren’t able to create an empty resource with PtrToHand is that you where setting the size to 1 (one).

Instead of:

place = PtrToHand((Ptr)0,rsrc,1);

Try:

place = PtrToHand((Ptr)0,rsrc,0);

But I think NewHandle(0) is a better way to go. You should not reference low memory like that.

From: Ebishop

Re: MenuBar in a window?

I’ve been working for some time on putting a menu bar inside a window. To some extent I’ve been successful. But I can’t help but wonder if there isn’t a more direct &/or elegant method of accomplishing it. I’ve had to write my own menu manager to get as far as I have.

I’m using Think C 4.05 (or above). I need to have 5 levels of hierarchical menus. I need to be able to place the bar into dialogs, document windows, or HyperCard xWindows.

I KNOW PEOPLE ARE DOING IT! I see it in desk accessories. I see it in SuperBoomerang (super program!). Is it top secret, esoteric knowledge? I would PAY for definitive information ( C source code ). Can it be had. I would think it would be a very popular technique.

PS: I’m ahead of Jim Matthews article in MacTutor Nov. ‘88. I find it hard to accept that it must be done like that.

[See the article on window menu bars in the Oct. ‘91 issue. It includes color, hierarchical menus, etc. - Ed.]

 
MacTech Only Search:
Community Search:

 
 
 

 
 
 
 
 
  • SPREAD THE WORD:
  • Slashdot
  • Digg
  • Del.icio.us
  • Reddit
  • Newsvine
  • Generate a short URL for this page:



MacTech Magazine. www.mactech.com
Toll Free 877-MACTECH, Outside US/Canada: 805-494-9797
MacTech is a registered trademark of Xplain Corporation. Xplain, "The journal of Apple technology", Apple Expo, Explain It, MacDev, MacDev-1, THINK Reference, NetProfessional, Apple Expo, MacTech Central, MacTech Domains, MacNews, MacForge, and the MacTutorMan are trademarks or service marks of Xplain Corporation. Sprocket is a registered trademark of eSprocket Corporation. Other trademarks and copyrights appearing in this printing or software remain the property of their respective holders.
All contents are Copyright 1984-2010 by Xplain Corporation. All rights reserved. Theme designed by Icreon.
 
Nov. 20: Take Control of Syncing Data in Sow Leopard' released
Nov. 19: Cocktail 4.5 (Leopard Edition) released
Nov. 19: macProVideo offers new Cubase tutorials
Nov. 18: S Stardom anounces Safe Capsule, a companion piece for Apple's
Nov. 17: Ableton releases Max for Live
Nov. 17: Ableton releases Max for Live
Nov. 17: Ableton releases Max for Live
Nov. 17: Ableton releases Max for Live
Nov. 17: Ableton releases Max for Live
Nov. 17: Ableton releases Max for Live
Nov. 17: Ableton releases Max for Live
Nov. 17: Ableton releases Max for Live
Nov. 17: Ableton releases Max for Live
Nov. 17: Ableton releases Max for Live