TweetFollow Us on Twitter

Sep 86 Letters
Volume Number:2
Issue Number:9
Column Tag:Letters

Letters

Fortran Bugs

Jim Bishara

New Orleans

Help, Help, I can't get SetItemStyle toolbox call to work. I've spent at least 40 hours reading the Microsoft Fortran manual and no luck. I'm running a Mac Plus under Finder 4.1 (dumb Microsoft), with version 2.1. I used the DEMO.INC file supplied with the Fortran. When it tries to execute the trap, a bomb message returns ID=02. What can be wrong?

call toolbx(GetItemStyle, menuhandle, itemcount, chstyle) {works fine}

call toolbx(SetItemStyle,menuhandle,itemcount, chstyle) {bombs like a champ with ID 02}

[Probably the toolbx.par file is wrong. We've found lots of errors in it in the past. SetItemStyle probably is not a VAR. Just a guess. -Ed]

Aztec C 1.06H Release

Don McCauley

Ridgecrest, CA

I purchased my Aztec C from ComputerWare, a MacTutor advertiser, and on May 20, I received a beta release of version 1.06H, created May 12th. This time I received tens of pages of update documentation from their new manual, fresh off the press. Included with this update is an index. Unfortunately, the index seldom includes the key words I've looked for. For example, try to find in the index where to find how many characters are significant in a variable declaration? I've had trouble with multiple defined symbols using "theWindow" from Takatsuka's book Using the Macintosh Toolbox with C, page 70. Struct assignments in SetRects don't seem to work right for me. Any help for us Aztec'ers in the ABC's of C column? As far as HFS goes, basically it's "so far, so good" with this version. I really love the Manx UNIX like vi editor, Z. Manx is worth it just for z. I'm excited about C as a language and more specifically, about Aztec C for my Mac Plus.

[I'm sorry to report that Bob Gordon, our ABC's of C author, became seriously ill this month and has been unable to work on his C column for some time. We've talked to him and he reports he is beginning to recover and hopes to contribute another ABC article next month. We wish Bob a speedy recovery as I'm sure all our C fans do. A few notes and letters to Bob would be most appreciated I'm sure. Send them to Bob care of MacTutor and we will forward them on. -Ed.]

What's Wrong with this Picture?

move.l  #4, D0
_NewHandle
LEA   #$40E132,A1  ;get icon pointer in rom
move.l  A1, (A0) ;save pointer in new handle
 pea  top(A5)  ;set up rom call
move.l  A0, -(SP)  ;handle to icon
_PlotIcon ; plot it

[Note: I tried to write an assembly routine to plot the famous stolen icon from ROM memory, but it didn't work. -Ed.]

Icon Problem Above

Lon Kelly

College, AK

Thank you for your recent letter regarding the stolen icon problem. The simple explanation for the failure is that the line

LEA #$A0E132, A1

is not a legal 68000 assembler statement. This is because LEA will not use the immediate mode for the effective address field: only control addressing modes are allowable (see Morotola's Programmer's Reference Manual, p. 102 and p. 53). However, Mac C will assemble the line, setting the effective address bits as though it were a MOVE instruction. The linker listing shows the code actually generated:

Mac C Linker Listing:

4: 43 FC 00 40 E1 32    lea   #$40E132, A1
A: 20 89  move.l a1, (a0)
C: 48 6D FF  FC  pea top(a5)

Note that the first six bits indicate the effective address mode. Mac Nosy version 2.1 will disassemble the errant code without comment, as shown by the Nosy listing, but it loses track of 2 bytes and the next instruction:

Nosy output:

4: 43FC 0040 E132  LEA  #$40E1232,A1
; where did location A go?
C: 486D FFFC     PEA glob1(A5)

The Mac Zap listing shows that the code is actually on the disk as in the linker listing and that Nosy just got confused. It is interesting that Mac Zap and TMON, which have relatively simple disassemblers, recognize the illegality, while the assembler and Nosy do not.

Mac Zap Disassembly:

00F3C4  43FC   DC.W $43FC  ;illegal 

I believe you have another, more insideous problem doe to direct manipulation of "master pointers" created by _NewHandle. You seem to simply write over them. This leaves the memory manager with a master pointer pointing to ROM or to part of your code, rather than to a "relocatable block". I've never done this, but I sure expect it would cause problems with heap compaction, etc. What will happen if you call _DisposeHandle for a "handle" to ROM?

I think it would be a lot safer to do something like this: first make a constant pointer in your code, then push it's address (which would be a handle in the sense of a pointer to a pointer, but not in the context of the memory manager) as a parameter to _PlotIcon. See the untested suggestion below:

romicon:  dc.l   $40E132
 pea  top(a5)
 pea  romicon
 _PlotIcon

More on the Icon Problem

Peter Brown

La Mirada, CA

Thank you for your response to my letter. I have to admit my surprise at receiving it. You must be swamped wiath mail and I really appreciate your taking time out to write.

I took a look at the code you sent me and the stolen mac icon problem in particular. I banged in the whole listing as it stood and then fiddled around with it. The problem looked like this: the "LEA" instruction does not require use of the immediate mode designator, '#'. If it wasn't just a handwriting boo-boo, I'm surprised your assembler took the statement. [See previous letter. -Ed] This is possible pitfall #1. Well, to test things out using TMON, I inserted an:

LEA $40AD40, A1 ; NOTE FOR OLD ROMS

instruction at the spot in question, set the program counter to the beginning of ICONSTUFF: and let 'er rip (an instruction at a time). Lo and behold, I got a bunch of barbage in the output icon.

I then thought I'd trace through the ROM code to see what it looked like. The routine itself is pretty compact and straight forward, and no special handling of address registers. After a few different efforts, including getting garbage plotted from the icon data in RAM, I realized that the LEA 'ROM' location, A1 instruction assembled as 6 bytes, not 4 as with the LEA ICON, A1 which uses program counter relative addressing. I was coding over the next instruction! This is possible pitfall #2.

After re-assembling the file with the LEA $40AD40, A1 in place, (and no typos!), the code worked! Best of luck and keep up the great work with MacTutor.

 lea  icon, a1 ;assembles in 4 bytes 
 move.l a1, (a0) ;move pointer to a0 h
 pea   top(a5) ;push rect
 move.l a0, -(SP);push handle
 _PlotIcon;plot icon

[The advantage of being Editor of MacTutor, is that I have 6,000 "registered" programmers to call on for assistance! Thanks guys! -Ed]

Loves TML

Micahael Rollins

Broken Arrow, OK

I appreciate all the help your publication has provided over the last few months. There is nothing better than good examples to help learn a system as sophisticated as the Mac's. Since I have started using MacTutor and programming with TML's Pascal, I have managed to come a long way up the learning curve on the Mac. I find that I turn frequently to Mactutor for help with ROM calls and Resource Files that are not well explained in Inside Macintosh. I looke forward to each month's copy. Keep up the good work.

Tutor and TML Great

Terry Permeuter

Seattle, WA

Just got the TML Pascal compiler and saw an issue of MacTutor. Both look great! Enclosed is my check for a year's subscription. If you haven't done so yet, could you plan on an article or two on the differences between MacPascal and TML? The ads say TML compiles MacPascal programs, but I've already found some walls when trying that. A short guide on what to look for would be helpful! Keep up the good work!

[MacPascal is so non-standard that it is a dis-service to try and maintain compatibility with it. See the new LightSpeed Pascal, which IS TML compatible. -Ed]

Thanks for the Review

Dan Weston

Famous Assembly Author

I hope that by now you have received a final manuscript copy of volume two of the Complete Book of Macintosh Assembly Language Programming that you so thoroughly reviewed at the mid-way point. I was able to incorporate many of your suggestions into the final version, but not all. In particular, I didn't write anything about AppleTalk because I haven't ever had the opportunity to use it in any real situation. I think the strength of my books is that they are derived from my experience as a software developer, so I am reluctant to write about things that I have no direct experience with. Also, AppleTalk seems to be worth an entire book all by itself. I am very grateful for the comments that you made however, because I think they helped me produce a better book in the end.

I don't know exactly when we will go into final editing, but I assume that it will begin July sometime. I expect the final book out sometime in November. Thanks for the nice words in MacTutor on my new books!

Language Fanatic

David Adamski

Tulsa, OK

Well, I see by the EXP 5/1/86 notcie on my mailing label that it's time to renew my subscription to MacTutor. Enclosed please find my personal check for $30. MacTutor is one programming journal that I would NOT want to be without. Although I subscribe to a variety of computer publications, I look forward to receiving yours each month. As a language fanatic I feel that MacTutor is by far the most informative Journal, with regular articles on all the popular programming languages for the Mac. Sorry to hear about your robbery, hope my renewal helps you get back on track. Keep up the good work, and I wish you luck in the future. [MacTutor is enjoying great success this summer, thank you. -Ed.]

Questions

Bill Westcott

San Leandro

I got an idea! I've been trying to learn TML Pascal and Mac programming at the same time and your magazine has been a great help, but when my programs don't work, it's sort of like playing Zork. I keep trying everything till it works. Very time consuming. I noticed a green "3" sticker on one of my last MacTutor issues. That means that there are at least ten people in my three digit zip code who subscribe to your magazine. What do you think of a "Mac.Guru" program where people who know what they're doing might volunteer to answer stupid questions and your organization could somehow bring them together with askers of stupid questions? Just thought I'd ask. [Here's a stupid question: How would you do that? -Ed]

How do others do it?

J.M. Puckett

Austin, Tx

Oh No! I just received my April issue of MacTutor and on my label I see that my subscription is due to run out beginning of next month. So enclosed herein is a check for $30. Also I would like to know if you could send me an author's kit. I have just completed a series of desk accessories and applications using Megamax C, and am anxious to share some of the neat things I have found.

Yours is an excellent publication. I have learned a lot from it. However, I would like to submit a suggestion: Please suggest that some of your experts write articles on defining one's own menu, window, and control definitions. I have been attempting to write these kind of programming objects, and have had, for the most part, great success just by following the hints in Inside Macintosh; but I would sure like to see how others are creating such things. [Keep watching my Intermediate Mac'ing column especially last month's TML shell program. It had a lot of goodies! -Ed]

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Sound Studio 4.10.0 - Robust audio recor...
Sound Studio lets you easily record and professionally edit audio on your Mac. Easily rip vinyls and digitize cassette tapes, or record lectures and voice memos. Prepare for live shows with live... Read more
Sparkle Pro 4.0 - Visual website creator...
Sparkle Pro will change your mind if you thought building websites wasn't for you. Sparkle is the intuitive site builder that lets you create sites for your online portfolio, team or band pages, or... Read more
Dropbox 140.4.1951 - Cloud backup and sy...
Dropbox for Mac is a file hosting service that provides cloud storage, file synchronization, personal cloud, and client software. It is a modern workspace that allows you to get to all of your files... Read more
FotoMagico 6.0.5 - Powerful slideshow cr...
FotoMagico lets you create professional slideshows from your photos and music with just a few, simple mouse clicks. It sports a very clean and intuitive yet powerful user interface. High image... Read more
Remotix 6.4.2 - Access all your computer...
Remotix is a fast and powerful application to easily access multiple Macs (and PCs) from your own Mac. Features: Complete Apple Screen Sharing support - including Mac OS X login, clipboard... Read more
Microsoft Office 365, 2019 16.57 - Popul...
Microsoft Office 365. The essentials to get it all done. Unmistakably Office, designed for Mac Get started quickly with new, modern versions of Word, Excel, PowerPoint, Outlook and OneNote-... Read more
War Thunder 2.13.0.66 - Multiplayer war...
In War Thunder, aircraft, attack helicopters, ground forces and naval ships collaborate in realistic competitive battles. You can choose from over 1,500 vehicles and an extensive variety of combat... Read more
RoboForm 9.2.8 - Password manager; syncs...
RoboForm is a password manager that offers one-click login, mobile syncing, easy form filling, and reliable security. Password Manager. RoboForm remembers your passwords so you don't have to! Just... Read more
Adobe Photoshop 23.1.1 - Professional im...
You can download Photoshop for Mac as a part of Creative Cloud for only $20.99/month (or $9.99/month if you have purchased an earlier software version). Adobe Photoshop is a recognized classic of... Read more
VirtualBox 6.1.32 - x86 virtualization s...
VirtualBox is a family of powerful x86 virtualization products for enterprise as well as home use. Not only is VirtualBox an extremely feature rich, high performance product for enterprise customers... Read more

Latest Forum Discussions

See All

‘Ark Legends’ Gives Players a Chance to...
It’s Airpods and Amazon gift cards galore as Melting Games opens pre-registration for Ark Legends. The upcoming mobile RPG is giving away tons of in-game goodies such as gold, energy, iron core, hero summon chest and rare iron core to players who... | Read more »
‘Nickelodeon Extreme Tennis’ Out Now on...
Nickelodeon Extreme Tennis () from Old Skull Games and Nickelodeon is this week’s new Apple Arcade release. Nickelodeon Extreme Tennis features characters from old and new Nickelodeon shows including SpongeBob, TMNT, and many more. The tennis game... | Read more »
SwitchArcade Round-Up: ‘RPGolf Legends’,...
Hello gentle readers, and welcome to the SwitchArcade Round-Up for January 20th, 2022. In today’s article, we’ve got a massive amount of new releases to check out. We’ve got summaries of all of them, from heaven to hell. We also have the lists of... | Read more »
‘Zed Blade ACA NEOGEO’ Review – Well, It...
SNK’s NEOGEO platform played host to a great many classics, both famous and under-the-radar. The Metal Slug games. The King of Fighters series. Magician Lord. Shock Troopers. Sengoku 3. NEO Turf Masters. Fatal Fury. Samurai Shodown. Twinkle Star... | Read more »
‘Inua – A Story in Ice and Time’ is a Un...
One thing I know about ARTE from their output on mobile over the years is that they love collaborating with really interesting and unique studios to put out really interesting and unique gaming experiences. This is true yet again with the latest... | Read more »
Out Now: ‘Angry Birds Journey’, ‘RPG Dic...
Each and every day new mobile games are hitting the App Store, and so each week we put together a big old list of all the best new releases of the past seven days. Back in the day the App Store would showcase the same games for a week, and then... | Read more »
SwitchArcade Round-Up: ‘Banjo-Kazooie’ C...
Hello gentle readers, and welcome to the SwitchArcade Round-Up for January 19th, 2022. After a couple of big-pants articles in recent days, today is somewhat of a lighter one. We’ve got a little news to go over, a small handful of new releases to... | Read more »
‘Yu-Gi-Oh! Master Duel’ Is Out Now on PC...
Yu-Gi-Oh! Master Duel was confirmed for all consoles including Switch, PS5, and more in addition to PC and mobile platforms last year. Since then, Yu-Gi-Oh! | Read more »
SwitchArcade Round-Up: Reviews Featuring...
Hello gentle readers, and welcome to the SwitchArcade Round-Up for January 18th, 2022. We’ve got another batch of reviews today, with our pal Mikhail covering the lamentable Grand Theft Auto: The Trilogy Definitive Edition. Has it been whipped into... | Read more »
‘Total War: Medieval II’ Coming to iOS a...
After a bit of teasing, Feral Interactive just announced that it is bringing Total War: Medieval II to iOS and Android. This will be the developer’s first release since the brilliant Alien Isolation. Check out my review of the iOS version here. | Read more »

Price Scanner via MacPrices.net

In stock and on sale! 16″ 10-Core M1 Pro MacB...
Amazon has new 16″ 10-Core/512GB M1 Pro MacBook Pros in stock today and on sale for $50 off MSRP including free shipping. Their prices are the lowest available for new M1 Pro 16″ MacBook Pro from any... Read more
Deal Alert!: 14″ M1 Pro with 10-Core CPU in s...
Amazon has the new 14″ M1 Pro MacBook Pro with a 10-Core CPU and 16-Core GPU in stock today and on sale for $2299.99 including free shipping. Their price is $200 off Apple’s standard MSRP, and it’s... Read more
Apple has 24-inch M1 iMacs (8-Core CPU/8-Core...
Apple has restocked a wide array of 24-inch M1 iMacs with 8-Core CPUs and 8-Core GPUs in their Certified Refurbished store. Models are available starting at only $1269 and range up to $260 off... Read more
Select 24″ M1 iMacs are on sale for $100 off...
Sales of Apple’s new 24″ M1 iMacs have been rare since its introduction, perhaps due to global supply issues. However, B&H is offering a $100 discount on select 24″ iMacs, and they’re in stock... Read more
M1 Mac minis are back in stock today at Apple...
Apple has M1-powered Mac minis available in their Certified Refurbished section starting at only $589 and up to $140 off MSRP. Each mini comes with Apple’s one-year warranty, and shipping is free: –... Read more
B&H has M1-powered Mac minis on sale for...
B&H Photo has Apple’s Mac minis with M1 Apple Silicon CPUs in stock today and on sale for $50-$100 off MSRP, starting at $649. Free 1-2 shipping is free to many US addresses. Their prices are... Read more
New Amazon sale: Apple’s 13″ M1 MacBook Airs...
Amazon has Apple 13″ M1 MacBook Airs on sale for $100 off MSRP, starting at only $899. Their prices are the lowest available for new MacBook Airs today. Stock may come and go, so check their site... Read more
Get an Apple Watch Series 7 for $50 off MSRP,...
Amazon has Apple Watch Series 7 models on sale for $50 off MSRP including free shipping. Their prices are the lowest available for Apple Watch Series 7 models today: – 41mm Apple Watch Series 7 GPS... Read more
Here are the details of Apple’s 2022 Educatio...
Need a new Apple Mac or iPad for school? Whether you’re a student, teacher, or staff member, you can use your .edu email address when ordering at Apple Education to take up to $400 off the price of a... Read more
Amazon is blowing out 2020 21″ iMacs for only...
Amazon has clearance 2020 21″ iMacs (2.3GHz Dual-Core i5, 8GB RAM, 256GB SSD) on sale right now for $599.99 including free shipping. Original MSRP for this model was $1099. Amazon expects delivery in... Read more

Jobs Board

Registered Nurse (RN) Employee Health PSJH -...
…is calling for a Registered Nurse (RN) Employee Health PSJH to our location in Apple Valley, CA.** We are seeking a Registered Nurse (RN) Employee Health PSJH to be Read more
Systems Administrator - Pearson (United State...
…and troubleshoot Windows operating systems (workstation and server), laptop computers, Apple iPads, Chromebooks and printers** + **Administer and troubleshoot all Read more
IT Assistant Level 1- IT Desktop Support Anal...
…providing tier-1 or better IT help desk support in a large Windows and Apple environment * Experience using IT Service Desk Management Software * Knowledge of IT Read more
Human Resources Business Partner PSJH - Provi...
…**is calling a** **Human Resources Business Partner, PSJH** **to our location in Apple Valley, CA.** **Applicants that meet qualifications will receive a text with Read more
Manager Community Health Investment Programs...
…is calling a Manager Community Health Investment Programs PSJH to our location in Apple Valley, CA.** **Qualified candidates will be invited to do a self-paced video Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.