TweetFollow Us on Twitter

Aug 88 Mousehole
Volume Number:4
Issue Number:8
Column Tag:Mousehole Report

Mousehole Report

By Rusty Hodgee, Mousehole BBS

From: gbryan (Geoff Bryan)

Subject: LSP Interfaces

Has anyone seen a more complete set of interfaces for the ROM & System routines beyond what Think put out last fall? If not, it looks like a long session of porting over the MPW 2.0 interface files. (What started me on this quest was the discovery that the Shutdown Manager routines do not seem to be in last fall’s 1.11 update package. Don’t know what else is missing or different.) [We have blasted Think repeatedly for taking so long to keep LS Pascal up to date with the latest set of goodies from Apple. There is a new version coming, they tell me, but, like the LS C update, who knows when? If nothing is forth coming at the Boston Expo, you can bet we will blast them again! They do have a Shutdown Manager glue patch you can get if you call for it. You might want to look at TML’s new MPW Pascal II., available at the MacTutor booth at the Boston Expo. -Ed]

From: pepnerd (Peter Kramer)

Subject: menus

I’m just a beginner at programming the mac. I’m trying to set up menus using the code in “Using the Macintosh Toolbox with C” by Takatsuka et. al. I’m not sure how to call InitGraf() in the situation where I have not set up any windows, only menus. In my development system the example (Aztec C) the call to InitGraf() uses the argument &thePort. However I cannot find where thePort is defined. Its quite distressing to double click on an application icon and get nothing but a bomb!

From: ericlim (Eric Lim, Flushing, NY)

Subject: Re: menus

I’m not familiar with Aztec because I’m using MPW C 2.0.2 and I think the variable thePort is defined in the “Quickdraw.h” header or include file.

From: think

Subject: Re: menus

It’s not important to know where thePort is defined; all that’s important is that you pass the correct series of initializations in order to get your application started:

 InitDialogs(NIL); }   

Typically, thePort is defined as an extern GrafPtr in Quickdraw.h (in LightspeedC) or in the appropriate header for other C compilers. --Rich Siegel, THINK Technologies

[The variable thePort is one of those mysterious Quickdraw global variables that no one ever talks about once you are convinced the proper call works correctly. The first few issues of MacTutor, over three years ago, addressed this subject in depth, explaining how the Quickdraw Globals are stored relative to A5 and how they work. The Mac system is responsible for the Quickdraw Globals maintenance. Refer to Volume 1 of The Best of MacTutor for more information. -Ed]

From: laskey (Jim Laskey, Halifax, NS)

Subject: Second Stack

Is there a safe way for an application to allocate a second system stack? TGS systems is currently developing a visual programming language known as Prograph. One of the main features of Prograph is the ability to perform editing and debugging of source code while in an execution state. All routine calling sequences are performed through a system stack as per normal. However, the state of the execution system stack must be kept separate from the system stack used during editing and debugging. The solution was to allocate a second system stack just for execution and use the defacto system stack for debugging and editing. Where does one allocate the second stack? For the sake of the stack sniffer this second stack was allocated between ApplLimit and A5. Early versions of Prograph used the following sequence to allocate the second stack;

newStack = ApplLimit;         
ApplLimit = newStack - DefltStack;         

Until testing on the Mac II, this worked quite well. On the Mac II, strange things began happening whenever Prograph switched to the second system stack. Text would not show up in menus and window frames were drawn incorrectly. The only notable difference between the Mac II and the other systems was that DefltStack was 16k greater on the Mac II, presumably to handle color Toolbox calls. The stack allocation algorithm was changed to the following;

newStack = ApplLimit + DefltStack / 2;         

This works fine. However, what happens when a Toolbox call needs a large chunk of the stack? Is there a safe way for an application to allocate a second system stack?

[I don’t think so. This sounds like one of those nifty ideas that will probably never work since it will never quite match up with Apple’s changing system file, and MultiFinder evolution. I suggest you scrap this approach and try something less controversial. Can Apple DTS suggest a safe approach? -Ed]

From: mark (Mark Murphy, Anaheim, CA)

Subject: New Stacks

I need to be able to create a new stack from within a script! The only thing I have found is ‘doMenu “New Stack...”’. Yet, I do not wish the modal dialog to come up to the user. I need to create a stack and be able to name it myself, from the script without user input. Anyone have any ideas?

From: rdclark (Richard Clark, Tustin, CA)

Subject: Re: New Stacks

Well, since you’re probably not planning to use HyperDA with your stack (as it wouldn’t allow you to write to the new stack anyway), you can get away with using an XCMD. What this command should do is to duplicate an existing “template” stack and then rename it. If the template doesn’t exist, then you should put up a dialog box to that effect and execute a “doMenu New Stack” to let the user create the *TEMPLATE*. If you *really* don’t want the user to see a file selection dialog, you could “encapsulate” a new stack as a bunch of resources in your stack. The XCMD would read one of these resources and use it to create the stack’s data fork. The other resources would be copies into the resource fork. However, this second method could get kinda ugly.

Subject: SCSI Accelerator

From: thecloud

I have tried using the SCSI Accelerator INIT (version 1.1) on my Jasmine 20 (miniscribe drive). It doesn’t do ANYTHING for performance; the Disk Timer II numbers “before and after” were exactly the same. The Jasmine formatting software doesn’t let you set the interleave (v.2.34), but I understood it to be 2:1, which was recommended by SCSI Accelerator’s author. So am I missing something, or does this INIT only work on certain brands of hard drives?

Some Responses from Usenet

From: Ephraim Vishniac

The SCSI Accelerator INIT only has the opportunity to work on drives which do all of their SCSI operations through the SCSI manager: there’s no way for it to trap hardware access. In order to get decent performance, the Jasmine software goes straight to the hardware on the Mac Plus. So, the INIT can’t do anything for that drive that it doesn’t do for itself already. Though I haven’t examined it, I expect that what this INIT does is replace Apple’s tight loop for blind transfers with an unrolled loop of some length. This lets you tighten up your interleaving one notch on many drives.

Defense of Apple: They chose the speed of blind reads and writes deliberately to accommodate the varied timing of as many drives as possible. They certainly knew how to write a faster loop, but were aware that it wouldn’t work with many of the then-available drives.

Claimer: I wrote the Jasmine software up to version 1.95 or so.

From: dolf@uva.UUCP (Dolf Starreveld)

As already explained in two previous messages by Maarten Carels and me, the original version of SCSI Accelerator indeed tried to speedup blind SCSI operations by loop unfolding. It installed the patches only on a Plus and one of the two patches was installed in the wrong place. This is a serious BUG. It may cause polled (non-blind) writes to only poll the first byte of a scInc/scNoInc transfer and not the rest, therefore effectively reducing these to blind writes. A good driver uses blind operations when it can, so if a driver uses polled writes there is a very nice probability that in these cases some serious mishap may come to you. Another error was that the patch code always assumed 512 byte transfers in each scInc/scNoInc command. This is incorrect and may also be the cause of the original accelerator failing on certain drives (notably Rodime 20Mb).

I have a new version that fixes all these bugs and installs patches at the correct places. The first version (SCSI-accel) is the one described above. The second version addresses the timing problem Ephraim addresses above under “In defense of Apple” for some drives. As we found out (I have a very old Rodime RO652) some old drives (and maybe even some new ones) can’t keep up with two consecutive move.b instructions. The original Apple code always had the delay of one DBRA between any two bytes transferred. This is, as stated by Ephraim, long enough for the code to work with any drive. The Rodime 652 needs a small delay between each two bytes, but a DBRA is an overkill.

If you don’t use a MacPlus, you might as well stop here. If your driver does not use the SCSI manager SCSIRBlind and SCSWBlind routines, ditto. If you don’t know, install and just see if it works. If not you’re driver either doesn’t use these calls or does polled operations.

Subject: cdev’s and System 6.0

Practically all the public domain/shareware cdevs I used with no problem under System 4.2/Control Panel 3.2 appear to break under System 6.0/CP 3.3. Usually it’s “The Control Panel cannot get enough memory” (with almost 2 megs free?!), but other alerts have popped up as well. One of the “broken” cdevs includes the Apple “Sample” cdev from IM V, which I compiled myself. Hmmmm.... I think the problem may be that these cdev’s do not have a ‘sysz’ resource. Am I right?

Well, after looking more closely, I discovered the reason why various cdev’s were breaking under System 6.0: they check for the presence of certain packages in the System file (usually PACK 7 or PACK 4) that no longer exist! (except in the ROM). Even Apple’s Sample cdev in IM V does this (although there’s a brief disclaimer that you “really should” check for the packages in ROM). Ouch. Then there’s the MultiFinder test. Most sample source code I’ve seen (actually, ALL) checks for MultiFinder’s presence by testing to see whether the WaitNextEvent trap is implemented. Now, in System 6.0, it’s implemented ALL THE TIME, whether you’re in MF or not. So if application X assumes it’s running under MultiFinder when it isn’t, well, look out.

Question: how do you detect MultiFinder’s presence or absence under 6.0? [Answer: Your not supposed to care if MulitFinder is there or not; only check for the various services you expect. -Ed]

From: rusty (Mr. Rusty Hodge, Orange, CA)

Subject: Modem Problems

Hello, glad to see the Usenet stuff here. Did you know about the modem problem on line 2252? I’m using a Novation Professional 2400 modem and when I dial 2252 I connect at a weird level. Your modem answer tone throws my modem into a strange state where I hear a single handshake tone that neither modem seems to recognize. I have to manually hang up to clear my modem or let the S10 register time out. I have only been able to connect once on 2252 at 2400 baud. Line 1190 seems to work fine at 1200 baud. Just thought I’d let you know.

From: billw (Bill White, Santa Ana, CA)

Subject: Re: Modem Problems

I checked the problem with funny carrier tones, and discovered that there is a low-pitched tone being transmitted from one of the system modems.

From: rusty (Mr. Rusty Hodge, Orange, CA)

Subject: Re: Modem Problems

Well, I’ll let you be the test. Here are the 4 mousehole 2400 numbers, in the order of their hunting sequence: 921-2252, 921-2255, 921-1090, 921-1161.

From: billw (Bill White, Santa Ana, CA)

Subject: Re: Modem Problems

I checked all the lines in the hunting sequence and sure enough, the problem is actually on the modem connected to 921-2252. It’s a low-pitched tone that is being sent, and which masks the carrier tone.

From: rusty (Mr. Rusty Hodge, Orange, CA)

Subject: Re: Modem Problems

Okay Bill- Thanks for your hard work and effort. It is apparently something that isn’t consistent: I am on that line now and had no trouble connecting. I’ll check it out though; I’ll stick a spare modem on it and see what happens.

From: stu (Stuart Davison, Tucson, AZ)

Subject: Had some noise problems...

I had some problems so far. They are as follows: sometimes I keep getting cancelled with a ‘**’ and I have to reread the message over and over until I get the full message. It may have been the lines, I called back several times and got through a few times without much of a problem. My question is, is there some way to temporarily disable the interrupt so that if the line is interrupting it won’t cause such a problem?

From: rusty (Mr. Rusty Hodge, Orange, CA)

Subject: Re: Had some noise problems...

The Interrupt key defaults to RUBOUT/DELETE. Delete is a kinda common noise character. Go to ‘M’ on the main menu and change your interrupt key to ^C or something. ^C seems to work well in a noisy environment.

From: rusty (Mr. Rusty Hodge, Orange, CA)

Subject: Security Access Levels

Since I’ve gotten about 15 letters about this, I thought i’d post a bit about security levels. When you initially call, you have a security level of 1. This lets you read and post messages locally. To post to the network, you need a level of at least 2. I will only give people network access (level 2) if they request it. If you request it, it will take about a week before I get around to doing it. So, please be patient and only request network access if you intend to write to the network. Finally- inappropriate network activity will result in your network access being denied. It is suggested that you read the usenet topics a week or two before posting to them. A level of 0 means you have been bad and your account is suspended.

From: rusty (Mr. Rusty Hodge, Orange, CA)

Subject: Modem Info

Wouldn’t you know it- just when we get the 2 new Mitsuba Modems, Mitsuba changes their firmware to be identical with the PP2400SA! So there is the possibility that 2400 will not be 100% reliable until I get around to cloning some ROMS from the old units. HOWEVER, the good modems are on the 921-2252 numbers, the bad ones are on the 1090 numbers. If 2252’s lines are busy you will be bumped to 1090, and may not connect at 2400. ALSO- The 998-1199 number is now using the good old 1200 baud UDS modem (read: ultra-high quality). If you are getting noise connecting to 2252 or 1090 at 1200, please try the 1199 number.

From: rusty (Mr. Rusty Hodge, Orange, CA)

Subject: MouseHole Access

It has been asked by many people if MouseHole is available to non-MacTutor subscribers. Currently, MouseHole is free to all users. In the future there will probably be a small annual charge for non-MacTutor subscribers. The MouseHole download, which is an entirely seperate system, costs $10/year for basic access, and $20/yr for unlimited access.

From: cfuller (Clayton Fuller, Whittier, CA)

Subject: IW spooler

Multifinder is pretty much a curiosity to me at the moment. The two things I need it to do it cannot. More likely I just don’t know how. First, how can I print to the Imagewriter in the background? Second, what terminal emulation programs will allow me to download in the background?

From: ossian1 (Santa Ana, CA)

Subject: Re: term emulator

VersaTerm does just fine in background download mode. It’s also only $99 to normal folk, and who knows, maybe the company will give students a discount. jvs - ossian

From: rusty (Mr. Rusty Hodge, Orange, CA)

Subject: Re: term emulator

I have problems using VersaTerm Pro on MHDL. I stopped using plain-old VersaTerm because I *thought* it didn’t download in the background. I’ll have to try it.

From: rick (Rick Boarman, Claris Corporation)

Subject: Re: term emulator

I use MicroPhone II to down load in the background. It works just fine even if it is a little pricey ($295 I think).

From: greg (Greg Kearney, Casper, WY)

Subject: Re: term emulator

Red Ryder 10.3 will download in the background

From: ms (Michael Steiner, Sierra Vista, AZ)

Subject: IW SPooler

Clayton, Multifinder does not have an IW background print option. If you want to spool to the IW, you will need one of the commercial, shareware or pub domain spoolers. As far as downloading in the background, there are a number of utils that will do that, but for term emul. programs, I think that only MicroPhone II will do that, but I may be mistaken.

From: lnedry (Larry Nedry, Anaheim, CA)

Subject: MouseHole Download

The MouseHole Download can be reached at (714) 533-6112. At present there are two phone lines at 2400 baud. If you are a new caller, type new at the logon: prompt. There is a fee for downloading but you may browse all you want before deciding if you want to join. The cost for 1 year is as follows: For 45 minutes of download time per day - $10.00 For 300 minutes of download time per day - $20.00 You can signup with MasterCard or Visa by typing a ‘$’ at the main menu. Type a ‘?’ for help. 128 and 1024 byte X-Modem is the protocol in use. I’ll be happy to answer any questions you may have. Larry Nedry (MHD sysop)

From: spud (Spud Potato)

Subject: MF Terminal programs...

The new version of AppleLink (v. 5.0) downloads in the background with no apparent slowdown in speed....

From: rich (Rich Siegel, Bedford, MA)

Subject: Re: LS Pascal Radius SANE incompatability

It is, in fact, a problem with Radius SANE. I talked to Ron Marianetti at Radius (who did the Radius SANE INIT), and he did track it down to his bug. There’s a new version. I think it’s 1.1 or 1.2 of Radius SANE that is available to fix the problem. --Rich Rich Siegel THINK Technologies

From: tomh (Tom Herbst, Ithaca, NY)

Subject: Palette Manager in LSP

I am having a great deal of difficulty adding the necessary interface file to use the Palette Manager with LightSpeed Pascal. I manually entered the appropriate data structures, inlines, etc. gleaned from Inside Mac V, the MacTutor articles, and the Programmer’s Online Companion (all consistent), but the SetPalette calls crash even MacsBug with bus errors. Is there a copy of the necessary code along with a simple (i.e. create a palette, a NewCWindow, and draw a rectangle) program example out there somewhere? My PaletteMgr and example program compile ok, but run very inconsistently, sometimes drawing things in the default (startup) palette and more frequently crashing the whole shebang.

From: rick (Rick Boarman, Claris Corporation)

Subject: Re: MacTutor Disks

Many a times we have wished that we could download MacTutor source code from some board (ours?). We’d be willing to pay some fee for this handy service. Can this be setup? [Yes, Rusty and I are setting up a private MacTutor download for a fee, exclusive to the Mousehole. -Ed]

From: ericlim (Eric Lim, Flushing, NY)

Subject: Modeless Dialog/List Manager

HELP! HELP !! Does anyone know of a technique on using the List Manager Package in a UserItem inside a Modeless Dialog? I don’t want to create the window and controls on my own, I want to use IsDialogEvent and DialogSelect. Any suggestions on how I can do this? So far, I’m getting a system error when I use LNEW with rView set to the rectangle of the UserItem. I got the Modeless Dialog to work on a regular dialog with a UserItem. I also got the List Manager to work on a regular window that I created. But it just bombs when I use Modeless Dialog with the List Manager Package. I would appreciate any help or suggestions I could get. Thanks a lot! [Forget the Dialog Manager and just use the list manager into a window. -Ed]

From: tompink (Tom Pinkerton, Iowa City, IA)

Subject: Ending DA drvrCtl routine

For a while now, I’ve been using an ending to the drvrCtl desk accessory routine that was supplied with my MDS development package. That ending, rather than simply returning, calls the low-level Device Manager routine IODone (pointed to by the JIODone global variable) before returning. I’ve been blindly keeping this in all my DA sources without really knowing its purpose. I assume that who ever wrote the sample DA for the MDS development system knew what he or she were doing when they added this call. All I can figure is that the call somehow clears the IO Request sent to the DA from the driver IO Queue so that other devices won’t receive the request (since they needn’t bother with it, I guess). Does anyone know anything about this?

From: asc (Alex Colwell, El Segundo, CA

Subject: Using TTEView in MacApp

Is there anybody using MacApp? We are trying to develop an application using MacApp here at HAC (Hughes Aircraft Company). The application is design to handle various aspects of the mission planning (ie. war games simulation). My problem is trying to create a TTEView object inside another view. Rather creating the text edit view object at the time ‘DoMakeViews’ method is invoked. I would like to able bounce around in the current view and create a TTEView object relative to the mouse click position. The TTEView’s ‘DoKeyCommand’ and ‘DoMouseCommand’ methods are never invoked. The current view methods is always getting it before the TTEView’s methods. I tried to pass the information on to the TEView’s method, but always crashes and transfer to MacApp’s debugger. I have created a TCatView to contain the current view of interest and create the TTEView, but it does not work either. I tried to force setting the current child view using the ‘SetCurrentChild’, but it crashes, too. I am really stump how to make this application work properly. So far, I am really disappointed in MacApp. It’s suppose to be easier to program for the Macintosh, but I think it is worst than traditional Macintosh programming. If anybody has any thoughts, please let me know.

From: david (David Schlesinger)

Subject: DRVRs and Asynch I/O Calls

I’m currently writing a DRVR to handle a network protocol, and one aspect of the dDevice Manager interface has me a little puzzled: I understand that I can make “asynchronous” calls to the driver, and that these will be handled “at interrupt level”. What part of the MAC OS calls my DRVR? How often does this happen? Is my DRVR called only when the driver’s i/o queue is non-empty? I also gather that I can “defer” processing a _Control call by returning with a RTS rather than via jIODone. Will my DRVR be called to service subsequent requests in the queue if I defer a call? Inside Mac doesn’t really detail all the specifics of managing asynch calls to driver id’s. Any wizards who have some insight , your help would be greatly appreciated!


Community Search:
MacTech Search:

Software Updates via MacUpdate

Xcode 8.1 - Integrated development envir...
Xcode includes everything developers need to create great applications for Mac, iPhone, iPad, and Apple Watch. Xcode provides developers a unified workflow for user interface design, coding, testing... Read more
Apple Numbers 4.0.5 - Apple's sprea...
With Apple Numbers, sophisticated spreadsheets are just the start. The whole sheet is your canvas. Just add dramatic interactive charts, tables, and images that paint a revealing picture of your data... Read more
Paperless 2.3.7 - $49.95
Paperless is a digital documents manager. Remember when everyone talked about how we would soon be a paperless society? Now it seems like we use paper more than ever. Let's face it - we need and we... Read more
DEVONthink Pro 2.9.6 - Knowledge base, i...
DEVONthink Pro is your essential assistant for today's world, where almost everything is digital. From shopping receipts to important research papers, your life often fills your hard drive in the... Read more
Safari Technology Preview 10.1 - The new...
Safari Technology Preview contains the most recent additions and improvements to WebKit and the latest advances in Safari web technologies. And once installed, you will receive notifications of... Read more
VueScan 9.5.60 - Scanner software with a...
VueScan is a scanning program that works with most high-quality flatbed and film scanners to produce scans that have excellent color fidelity and color balance. VueScan is easy to use, and has... Read more
Civilization VI 1.0.0 - Next iteration o...
Sid Meier’s Civilization VI is the next entry in the popular Civilization franchise. Originally created by legendary game designer Sid Meier, Civilization is a strategy game in which you attempt to... Read more
Adobe Flash Player - Plug-in...
Adobe Flash Player is a cross-platform, browser-based application runtime that provides uncompromised viewing of expressive applications, content, and videos across browsers and operating systems.... Read more
RestoreMeNot 2.0.4 - Disable window rest...
RestoreMeNot provides a simple way to disable the window restoration for individual applications so that you can fine-tune this behavior to suit your needs. Please note that RestoreMeNot is designed... Read more
Persecond 1.0.7 - Timelapse video made e...
Persecond is the easy, fun way to create a beautiful timelapse video. Import an image sequence from any camera, trim the length of your video, adjust the speed and playback direction, and you’re done... Read more

Latest Forum Discussions

See All

The Forgotten Room (Games)
The Forgotten Room 1.0.1 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0.1 (iTunes) Description: Play as paranormal investigator John “Buster of Ghosts” Murr as he explores yet another mysteriously creepy house. This... | Read more »
5 Halloween mobile games for wimps
If you're anything like me, horror games are a great way to have nightly nightmares for the next decade or three. They're off limits, but perhaps you want to get in on the Halloween celebrations in some way. Fortunately not all Halloween themed... | Read more »
The 5 scariest mobile games
It's the most wonderful time of the year for people who enjoy scaring themselves silly with haunted houses, movies, video games, and what have you. Mobile might not be the first platform you'd turn to for quality scares, but rest assured there are... | Read more »
Lifeline: Flatline (Games)
Lifeline: Flatline 1.0.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0.0 (iTunes) Description: The Lifeline series takes a terrifying turn in this interactive horror experience. Every decision you make could help... | Read more »
Game of Dice is now available on Faceboo...
After celebrating its anniversary in style with a brand new update, there’s even more excitement in store for Game of Dice has after just being launched on Facebook Gameroom. A relatively new platform, Facebook Gameroom has been designed for PC... | Read more »
4 addictive clicker games like Best Fien...
Clickers are passive games that take advantage of basic human psychology to suck you in, and they're totally unashamed of that. As long as you're aware that this game has been created to take hold of your brain and leave you perfectly content to... | Read more »
Smile Inc. Guide: How not to die on the...
As if Mondays weren't bad enough, at Smile Inc. you have to deal with giant killer donuts, massive hungry staplers, and blasting zones. It's not exactly a happy, thriving work environment. In fact, you'll be lucky to survive the nine to five.... | Read more »
Oh...Sir! The Insult Simulator (Games)
Oh...Sir! The Insult Simulator 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: | Read more »
WitchSpring2 (Games)
WitchSpring2 1.27 Device: iOS Universal Category: Games Price: $3.99, Version: 1.27 (iTunes) Description: This is the story of Luna, the Moonlight Witch as she sets out into the world. This is a sequel to Witch Spring. Witch Spring 2... | Read more »
4 popular apps getting a Halloween makeo...
'Tis the season for all things spooky. So much, so, in fact, that even apps are getting into the spirt of things, dressing up in costume and spreading jack o' lanterns all about the place. These updates bring frightening new character skins, scary... | Read more »

Price Scanner via

Apple reveals new next-generation 15″ and 13″...
Apple today revealed their next-generation 15″ and 13″ MacBook Pros. The new models are thinner and lighter than before with a new aluminum design featuring an enhanced keyboard with retina, multi-... Read more
Worldwide Smartphone Shipments Up 1.0% Year o...
According to preliminary results from the International Data Corporation (IDC) Worldwide Quarterly Mobile Phone Tracker, vendors shipped a total of 362.9 million smartphones worldwide in the third... Read more
TuneBand Arm Band For iPhone 7 and 7 Plus Rel...
Grantwood Technology has added the TuneBand for iPhone 7 and 7 Plus to its smartphone armband series. The TuneBand provides a lightweight and comfortable way to wear the iPhone while running,... Read more
1.4GHz Mac mini on sale for $449, save $50
Adorama has the 1.4GHz Mac mini on sale for $50 off MSRP including free shipping plus NY & NJ sales tax only: - 1.4GHz Mac mini (Apple sku# MGEM2LL/A): $449 $50 off MSRP To purchase a mini at... Read more
21-inch 1.6GHz iMac on sale for $999, save $1...
B&H has the 21″ 1.6GHz Apple iMac on sale for $999 including free shipping plus NY sales tax only. Their price is $100 off MSRP. Read more
Macs’ Superior Enterprise Deployment Cost Eco...
IBM’s debunking of conventional wisdom and popular mythology about the relative cost of using Apple Mac computers as opposed to PCs running Microsoft Windows at the sixth annual Jamf Nation User... Read more
12-inch WiFi Apple iPad Pros on sale for $50-...
B&H Photo has 12″ WiFi Apple iPad Pros on sale for $50-$70 off MSRP, each including free shipping. B&H charges sales tax in NY only: - 12″ Space Gray 32GB WiFi iPad Pro: $749 $50 off MSRP -... Read more
Apple refurbished 12-inch 128GB iPad Pros ava...
Apple has Certified Refurbished 12″ Apple iPad Pros available for up to $160 off the cost of new iPads. An Apple one-year warranty is included with each model, and shipping is free: - 32GB 12″ iPad... Read more
Apple refurbished iPad minis and iPad Air 2s...
Apple recently dropped prices on several Certified Refurbished iPad mini 4s and 2s as well as iPad Air 2s. An Apple one-year warranty is included with each model, and shipping is free: - 16GB iPad... Read more
MacHTTP-js Preview Full-featured Web Server f...
MacHTTP.Org has released MacHTTP-js Preview for macOS, a full-featured Web server for 21st Century desktops and servers. MacHTTP-js is a modern take on the classic stand-alone, desktop computer Web... Read more

Jobs Board

*Apple* Retail - Multiple Positions - Apple,...
Job Description: Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, Read more
Software Engineering Intern: UI Applications...
Job Summary Apple is currently seeking enthusiastic interns who can work full-time for a minimum of 12-weeks between Fall 2015 and Summer 2016. Our software Read more
Security Data Analyst - *Apple* Information...
…data sources need to be collected to allow Information Security to better protect Apple employees and customers from a wide range of threats.Act as the subject Read more
*Apple* Retail - Multiple Positions - Apple,...
Job Description: Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, Read more
*Apple* Solutions Consultant - Apple (United...
# Apple Solutions Consultant Job Number: 52812872 Houston, Texas, United States Posted: Oct. 18, 2016 Weekly Hours: 40.00 **Job Summary** As an Apple Solutions Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.