Aug 92 Letters
By Neil Ticktin, Editor
Higher quality, larger Magazine for less money
May I first say that I love your magazine (I love anything about the Mac!). Im a professional programmer for Xerox Corporation, but I do Mac programming for fun. I have some criticisms that I think could improve your magazine.
1) Remove the beginner section - there are a bunch of books out there that treat this subject - the reason that I came to your magazine is because it pushed the envelope and had complex, advanced algorithms in it.
2) Change the glossy paper to recycled paper, triple the size of the magazine, and then charge $5.00!
3) How about an article about the ins and outs of writing Printer Drivers?... or ...Why It Takes Three Man-Years to Write a Mac Printer Driver ???
...remember, I think your program should out teach basic programming skills, but should assume the audience is made up of average-to-advanced programmers... the personal attitude which should lead people to your magazine is motivation, not a general how does one start programming the Mac?
- Andy Ritz, El Segundo, CA
[Andy, in regards to the beginner section, most of our readers tell us that even though they thought they knew a topic, they found something new and interesting in Dave Marks articles. I understand that books are out there, in fact I urge people to buy them. I also understand that this column will not only help the new programmers, but also those who want to clean up their style.
Regarding the changing of the stock, increasing the size, and charging less. Please call me with the name of the printer that you know can do this. As far as we know, this isnt possible without a drastic increase in price.
Finally, I would encourage someone to write an article on printer drivers. Right now, we dont have such an article scheduled, but if you know of someone, let me know. MacTutors editorial goal is to provide information to all levels of programmer, from beginners to advanced. Well continue to make all efforts to reach this goal. - Ed.]
Less Is Better!
Thank you for the new-look MacTutor. Like many other subscribers, I was beginning to wonder what had happened to MacTutor - having assumed that my subscription had lapsed. Never mind! The replacement of the old with the new is often a good thing.
I was particularly pleased with your policy decision not to print vast amounts of code. In the future, articles which focus on particular coding tricks or secrets or useful but not well-known techniques would be most welcome. Such articles should be succinct and to the point and present only the code snippets necessary to explain the idea.
Many of the past MacTutor articles have hidden gems of knowledge inside very specialized solutions or inside programming frameworks which are not used by the everyday reader. For example I am using the THINK Class Library these days and any other framework is of no direct relevance to me. However, particular techniques of, say, using the toolbox, are. If these could be presented in a more generic way so that they could be easily adapted to different frameworks and programming environments, then this would be very useful. Wishing you every success with the new MacTutor.
- Paul Howson, Queensland, Australia
[Part of the purpose of Dave Marks article is to address how to properly access parts of the toolbox. Even if you are not a novice programmer, skim his articles and compare it with your own style. Well try to continue doing things in a general fashion. - Ed.]
MacApp and A/UX
I agree with you about the Tools. I need some. I understand what you're saying about POSITIVE and NEGATIVE requests. I hear and understand.
I would like some beginner's code on using MacApp. I know, you've beaten this one to a pulp. But version 3 is out, and I wasn't listening before.
I would like some coverage on programming stuff to specific A/UX and MacOS integration problems.
What a thrill to get mail from someone I just saw on a magazine editor's spot. This InterNET keeps on giving me chills (I had many conversations with Frank Da Cruz & Yoshi...WOW).
- Steven Woolgar, CHUS-FAMUS
[Steven, well work to get some good quality starter articles on MacApp as well as advanced ones. As far as A/UX. Ive heard this request a couple times. Who else is interested? More specifically, what would you like to see? - Ed.]
Glad to see you back
First of all I'm glad MacTutor is back in business! I like the renewed lay-out, the editor's intentions seem OK. Im just wondering when you will release version 2.0.1 or the Tune-Up.
Don't forget us Pascal programmers out here, we're still alive and kicking!
I always enjoyed the MouseHole Report. It adresses real problems. Why not start a "Talk show" on AppleLink?
I agree on the reduction of printed code, there's indeed no need to print yet another "DoNothing" shell.
You could pay more attention to the international side of programming. There are still programmers abound who think that the world is flat and lies between Boston and L.A.
If possible I'd like to receive my subscription copy before the issue appears in the local window display.
Oh and yes I will renew my subscription Can this be done through AppleLink?
So keep it going, we really need you. I learned and still learn more from MacTutor than from any other source available.
- Luc Roels, Diegem, Belgium
[Luc, as far as the talk show, AppleLink is very expensive to do this and doesnt make sense for us. We are looking into other solutions so stay tuned. I hear you on the localization topic. Ill look for articles.
As far as delivery. It will almost always show up in the stores a bit before your mailbox. The reason is that shippers are faster than the postal service in any country. The only way to avoid this would be to delay shipment to the dealers. But, well continue to look for faster delivery methods.
Can you subscribe via AppleLink? Yes, see the front of the magazine for info on communication with us. - Ed.]
I just got the second issue of the new MacTutor. I havent quite finished reading it all yet, but from my initial skim through it it looks like every article has something of interest to me-which is great!
Ive just finished Mike Scanlins article on Efficient 68000 Programming. Its got lots of useful tips that I will endeavour to keep in mind. However, one of his code samples annoys me, because it repeats a mistake that a lot of Mac assembly-language hackers seem to make.
On page 40 he gives the following replacement for a _BlockMove call:
@1 Move.B (A0)+,(A1)+
Now, its a well-known feature of the DBcc group of instructions on the 68000 processor family that they terminate the loop when the count reaches -1, rather than zero. Whats not so well-known is that this is no accidental quirk, but a carefully-thought-out design feature. It allows you to automatically handle the case where the loop count is initially zero, without having to put in a separate test before entering the loop.
Here is an example of the right way to use a DBRA to move a block of bytes:
move.w count, d0
@1 move.b (a0)+, (a1)+
@9 dbra d0, @1
Notice how the loop is entered by branching to its end? That causes an extra initial execution of the DBRA instruction. This subtracts 1 from the loop count (adjusting for the termination on -1 instead of zero), and it will fall through without actually entering the loop if the count was initially zero. Elegant, huh?
It is also possible to use DBRA with a 32-bit loop count. Here is an example skeleton loop:
move.l count, d0
@1 swap d0
; .. body of loop ..
@9 dbra d0, @2
dbra d0, @1
Basically this is a DBRA loop within a DBRA loop: the outer loop counts down the high word of the 32-bit count, while the inner one handles the low word. Since the SWAPs and the outer DBRA are only executed once every 64K iterations of the inner loop, youre still effectively getting the full speed of a simple DBRA loop.
There-now Ive got that off my chest, I must finish the rest of the magazine.
- Lawrence DOliveiro, New Zealand
For your information, the journal is quite interesting. I believe it could be a bit more technical, and would also like to see more Pascal programs. (I know, few times Pascal and Technical appear in the same sentence; however, I believe that Symantecs Pascal has become powerful enough to write full fledge applications.) Overall, the magazine is quite useful, as well as helpful. Try to keep it oriented towards programmers.
- Edward Wolpert, Knoxville, TX
[Edward, great suggestion. I too would like to see more Pascal articles. They are getting harder and harder to find because of the incredible success of C and C++. I will keep vigilant in my search for more Pascal articles! - Ed.]