info-mac@uw-beaver (03/15/85)
From: Moderator John Mark Agosta <INFO-MAC-REQUEST@SUMEX-AIM.ARPA> INFO-MAC Digest Friday, 15 Mar 1985 Volume 2 : Issue 14 Today's Topics: Serial Drivers TMON debugger review Things seen at MACWORLD EXPO Beta Software ---------------------------------------------------------------------- Date: Tue, 12 Mar 85 14:15:58 pst From: Ken Giallanza <kcg@lll-crg> Subject: Serial Drivers "Serial Drivers for The Rest of Us" This is probably old hat to all of you Lisa jocks, but here goes... To those forlorn souls in search of the RAM serial drivers, take heart. Find (buy?) yourself a copy of MacTerminal and get out your trusty copy of RMover or the Resource Editor. Use one of these programs on a BACKUP copy of MacTerminal. Open the MacTerminal application and search through the resource types until you find the "SERD" type (guess what this is). Copy one or both of these resources: #256, and #257 depending on the version of MacTerminal, to another file. But wait, you want to use the serial drivers! Now the fun begins. Well I don't have the answer yet but eventually I'll get a day off and finish figuring it out. Perhaps someone out there will finish the story for me. So here's what little I do know. In inside Mac you have no doubt noticed the Pascal ONLY call RamSDOpen, which has no assembly language equivalent. In Lisa Pascal simply stuff the SERD resource into your application and call RamSDOpen with the parameters 'SERD' and 256 and go. From assembly (or in my case, C) the situation is a little more difficult. The format of the SERD is a little strange, for those who remember the structure of a DRVR header this one has four headers in a row. To make a long story short, what needs to be done (this is how Lisa Pascal does it) is to set up the device control entries (dce's) to point to the various headers in the SERD. The headers are labeled .AIn, .AOut, .BIn, .BOut. This is not difficult to do (famous last words) and probably falls under the category of a evening job. My multiply divided attention will no doubt yield a solution in a week or so, which I will post. In the mean time someone out there must have already figured this out - am I tilting at windmills? cmd-shift-cokebottle Dave Burnard kcg@lll-crg ateam%amber.cc@berkeley ------------------------------ Date: Fri 8 Mar 85 11:47:35-PST From: Gustavo Fernandez <FERNANDEZ@SU-SCORE.ARPA> Subject: TMON debugger review I have recently received a review copy of a new debugger called TMON published by TMQ software, 1110 Lake Cook Road, Buffalo Grove, IL, 60090, tel # (312) 520-4440. Before I continue with the review, I will state the main reason why I do NOT recommend this product - it's copy protected! This is especially bad since this is a programmer's tool that you want to keep on your work disk along with the program you are debugging and other tools. I spent a couple of hours removing the protection system in order to make this thing usable for real work. Don't buy this product unless you are prepared to do the same. The $100 (or $150) price tag is also rather steep considering that Apple provides MacDB and Macsbug essentially free. This is a fairly full-featured debugger which lies somewhere between Macsbug and MacDB in its style of operation. It runs on a single mac (preferably 512K) and is window based. TMON comes with some promo material giving its long list of features. I will copy it below giving some comments on the usefulness of various features. Because the Mac ROM is not re-entrant, TMON uses its own window system. All windows take the full width of the Mac screen, but are variable height. They can also slide over and under each other giving the appearance of vertical sliding blackboards (except that the background is white!) There are 8 different types of windows, some of which have vertical scroll bars. They are: Dump, assembly, breakpoints, registers, resource file, heap, user, and numeric conversion. The dump window is a standard hex/ascii dump with scroll bars. You can modify memory by replacing a hex value with an expression which has a fairly general syntax which allows various math and logical operators and limited symbol substitution. One of the more powerful features is the ability to anchor a window to a register or a heap handle and memory above and below the anchor point. The assembly window is similar to the dump window except that it displays data as disassembled 68000 instructions. This is a mini-assembler as well as a disassembler: a feature sorely lacking from other mac debuggers. You can also quickly scroll code forward and backward. Unfortunately, the assembly window does not recognize neither the Lisa Pascal in-line symbols nor the MDS symbol table files which make disassemblies that much more readable. (note that there is a Where command discussed below which can search for the Lisa Pascal symbols, but this is no substitute for the Macsbug style display which gives symbol+offset on each line.) Note that TMON has a continuous refresh feature which continually reads memory and redisplays the screen during the idle loop. This is cute for watching some low memory globals tick by but seems almost useless for anything else because no user code can be run in the background which the TMON screen is up. The Heap window is probably the best tool to date for quickly identifying all of the objects in the heap. The program scans low memory globals, window lists, resource maps, etc. to figure out what type of object a particular memory block is. There is also a user identification hook which lets users allow objects specific to a program to be identified. All data structures are also checked for internal consistency. Unfortunately, once an object is identified, there is no way to display it other than either a hex/ascii dump or an disassembly. There is no counterpart to the new macsbug macro facility which allows arbitrary data structures to be dumped symbolicly. (This feature of macsbug is actually available for only a limited number of objects but is easy to modify if you have the newly released source code.) The file window lets you look at the map of any open resource file. It shows all of the available resources and indicates whether they are in memory or not. A function in the user window can actually load a resource into memory, but there is no automatic way to do this from the file window. The register window does what you might expect. It displays and allows modification of all 68K registers. The numconvert window is a nice calculator for doing the average calculations and base conversions which are so common in everyday debugging. The user window invokes a user-modifiable routine for which full source code is provided. This brings up a window full of even more functions which I will just name here:block move, compare, fill, find (1,2,4 bytes), checksum, load resource file, swap registers with alternate set, intercept traps, scramble heap, show free memory, show trap address, where (given an address, give ROM trap or Pascal symbol closest by.), show program screen. I will elaborate on only a few of these. Heap scrambling is a Mac debugging technique available on all three Mac debuggers which is designed to test for dereferenced handle errors by causing relocatable memory blocks to be moved around whenever they possibly can. With Macsbug and MacDB, this was a very slow and cumbersome process because those debuggers would task switch at every trap location. The scrambling operation itself was also horribly slow. TMON fixes this by NOT doing a complete switch over to its screen but rather simply setting the bit on the top left corner of the screen (outside one of the rounded corners) indicating that a scramble operation is in progress. This is still quite slow, but much bearable than with macsbug. One area where macsbug is clearly superior to TMON is in the area of tracing and A000 trap intercepts. There is no capability in TMON to have a running trace of Mactraps. As soon as one is encountered the debugger is entered and another exit command must be executed to restart the program. The same holds true for the single step feature: i.e. there is single step but no trace. There is also no 'spy' capability like there is in Macsbug to allow an area of memory to be checksummed after each mactrap or instruction step. The documentation for TMON is 61 pages long and is fairly well written and logically organized. Often whole sets of paragraphs are summarized with 1 or two line 'pointers.' Possible problems are indicated by a small 'firecracker' icon. There are a few typos, however, and the imagewriter produced text is often hard on the eyes. TMON is not skimpy about memory usage: 16K for the basic TMON code 3.7K for optional ROM trap names 1.3K for local variables and stack 3.6K for the optional user-defined area 22K for the saved screen. (This can also be compressed to 10K or 4K or eliminated entirely if you don't save the screen.) ---------- 47434 bytes - for a completely configured system. A configuration utility is built-in so that you can modify the optional settings above as well as a few more options which don't affect memory use. All in all, the TMON is yet another tool in the growing library of available Macintosh systems software. For reasons stated above, it will not replace Macsbug, but it is certainly a viable alternative to MacDB on a 512K machine. Unfortunately the silly copy protection makes it useless to all but experienced hackers who can get around such things. The price is perhaps a bit high, but not unreasonable considering the amount of documentation provided. Gus Fernandez FERNANDEZ@SU-SCORE compuserve 71425,1456 ------------------------------ Date: 13 Mar 85 17:17:42 EST From: Seymour <JOSEPH@RU-BLUE.ARPA> Subject: Things seen at MACWORLD EXPO Products Of Interest At Macworld Expo Big Mac Monitor: Professional Data Systems. A 23" high resolution B&W monitor for the mac. Includes free external mod for the Mac. Sharp picture. Color Imagewriter Ribbons:Almost everyone. Imagewriter ribbons in Red, Yellow, Green, Blue, Purple, Brown and of course, Black. Hippo C: Hippopotamus software inc. Level one and level two Mac C. Level two allows creation of standalone applications. K&R C works on 128k single drive Macintosh Hippo-Lock : Hippopotamus software inc. DES data encryption for Macintosh files. Great file security, but boy doesn't it sound painful (gosh, I've got, gasp, HIPPO-LOCK!) ElectroFont: Paragon Courseware. Electronic circuits font. Amps, transistors, resistors, transformers, diodes... ExperLisp: Expertelligence inc. Compiled Lisp. A "Modern" lisp with DOLIST, DOTIMES, CASE, CATCH, THROW.. Incrementally compiled. Looks interpreted. Load-on-call allows large system development. Lexically scoped like Common Lisp. Cross compiler from Symbolics 3600 Lisp machine is available. N dimensional arrays, and graphics. (3d) ExperLogo: Expertelligence, Inc. Fast Logo with Turtle and Bunny (3d! Roll, Pitch, Yaw) graphics. Compiled Logo with the appearance of interpreted logo. Data handling, load-on-call for building large systems, array handling. I like this product, my brother says its too slow... Filevision: Telos Software Products. The visual filing system. Graphically oriented database system. Innovative, this cannot be done on any conventional micro. Not a general purpose database. Hyperdrive: General computer. The fastest 10 meg hard disk for your mac. Internally mounted with a new power supply and a variable speed fan. Comes with drive partitioning software. The only drive the Mac the mac can boot from. Expensive, but a real kick for Mac Speed demons. Available with or without fast 512k upgrade for small Macs. Lock-It: Assimilation systems inc. Limit access to your files by inserting a password which intercepts the OPEN command. The password can be any combination of characters and can be applied to any file or software application. Wow another $29 marvel from Assimilation systems. Mac Bottom: Personal Computer Peripherals Corp. An external 10 megabyte hard disk for the Macintosh. The first of the second generation drives for the Mac. It is a 2 inch high pad the size of the footprint of the Mac. You put the Mac-Bottom on the desk, and the Mac sits on top of the disk. Neat. Its the fastest of the external drives I tested. It provides a new serial port on the back of the drive to replace the one used and does print spooling through new port. Includes volume segmenting and backup software. Good looking, and fast. Mac C*: Consulair Corp. Very Macish development system. With the optional Mac C Toolkit libraries, it supports most of the Toolbox routines. Requires 2 drives or a hard disk. Mac C* was used to write the Apple MDS Macintosh Pascal Illustrated - The fear and loathing guide: Addison Wesley. A humorous text book on MacPascal. Join Mr Moss and his hound dog Rollo as they expolore every nook and cranny of MacPascal. "If coloring books had instructions a kid would just chew the pages." Thus begins the tirade of Mr. Moss, philosopher, programmer, and excitable boyfriend, in his crusade to strip the boring evil that pagues computer books. MacMail*: AEGIS development Inc. Modem based mail system. Auto dials other systems, logs in and sends mail. Your mac can be left in mail mode and it will auto answer and receive mail while you sleep. They claim to soon do mail with Apple networks. MacMath Fonts: Sophus Systems. Lots and Lots of math symbols, dozens of brackets, parens, Roman and Greek alphabets, arrows, special symbols. Good looking. Mac Memory Disk: Assimilation systems. The $29 ram disk you have been hearing about. A dream to operate. Very fast, very flexible. A must. Mac Publisher: Boston Software Publishers Inc. Newspaper/Newsletter layout software. Handles multi column layout with illustrations, titles... Operates on Mac XLs and works with Apple LaserWriter to make incredible MacPublishing system. Something only do-able on the Mac. Bravo! They published a newsletter at the show. Very good looking. Mac Tracks: Assimilation Systems. A Macro facility for the mac. You can store mouse movements, clicks, and keystrokes as Macros, give them names and do long series of operations with one keystroke. Macros cannot call other macros. MacVision: Koala Technologies Inc. Video digitizer for the Mac. Sources can be cameras, VCRs (in pause mode), video disks, even other computers. Takes about 2 seconds to grab a frame. Good hardware and software. Nice system overall. Makes Macpaint format files. MegaMac*: Micrographic Images Corp. One megabyte macs! They said eventual expansion to 4M was planned. Wow, watch out. Comes with Ramdisk software. A hyperdrive cannot be installed in a Megamac. MegaMax C: Megamax Inc. In line assembly, supports dynamic overlays. Full access to macintosh toolbox routines. One pass compile. Mentauris Composite Video Adaptor:Mentauris Technologies. Provides a high quality composite video signal and output port for large screen educational and commercial applications. MOUSEPAD*: Mousetrak Inc. My favorite mousing surface. Non skid back, cushioned, tightweave cloth surface. Available in many colors. Approx $9 (415) 383-2477 Music Character Sets: South Bay Software. A number of fonts for the Macintosh that produce Musical notation (whole, half, quarter notes, rests...) Paradise: Paradise systems inc. Another second generation hard disk for the Mac. Hooks to serial port, provides port on its back to replace the one taken up. The Paradise sits to the side of the mac, not as neat as the Mac-Bottom but still much faster than the old Davong, Tecmar set. ProCom-M: Prometheus Products Inc. Terminal software, YUCK. Nuff said. Project-A-Mac: Professional Data Systems. Projects Mac video onto screens up to 25 Ft across. (these were used at the conferences). Available optionally with 5 or 6 ft. curved screen. Includes Mac video mod. Brightness, contrast and focus controls. Nice Picture. Rascal: Griffin Series (developed at Reed College) pascal like language. Fast, compiled code for multi-tasking, I/O oriented program, complete Mac Toolbox support. Great for real-time programming. Creates stand alone applications. SciFonts: Paragon courseware. Scientific font. with sum, integration, square root, infinity and dozens of other useful symbols Smartmodem 2400: Hayes Microcomputer Products. 2400 baud modems for your mac. Communicates at 300, 1200 and 2400 baud. Maximum Flexibility, maximum price. Smartcom II: Hayes Microcomputer Products. Terminal emulation software for the Hayes Smartmodem series of modems (and compatibles). Does great VT102 (with line and character insert and delete!) emulation as well as the expected file transfer flexibility (xmodem...) Many features, easy to use, very Macish. Softworks C: softworks Ltd. a K&R C for the Mac. They have a pretty good terminal program (vt100, xmodem, macput, xon/xoff) written in it and the source is available if you want to develop terminal based applications. The Keeper*: Micro Design 5 to 33 Meg hard disks for single user or AppleTalk* use. The only smart FILE SERVER for AppleTalk*. Available in combinations of fixed and removable platters. Keeper can spool to the Imagewriter. You can have multiple FILE SERVERS on one Apple Talk* net. This is not true for DISK SERVERS. ThinkTank*: Living Videotext inc. The first Idea Processor is now available in 128k and a new enhanced 512k version for the Macintosh. One of the speakers at the conference had his talk notes in Thinktank. A revolutionary product for people who do proposals, planning, briefs, reports, specs, and presentations. TMON: TMQ Software inc. An interactive Multi Window Monitor/Debugger for the Macintosh. Works on both 128/512k macs. Claims many many features. Was not displayed at show. If it is for real, and I was looking for a debugger, I would definitely look into this (312) 520-4440 Turbo Touch: Assimilation systems. A mouse replacement consisting of a track ball. Interesting, but I still prefer the mouse. Vidioworks:Hayden software. Incredibly neat video animation software. Pre-release now, but the demos are great. Watch for it. XL/SERVE: Infosphere Inc. A software product for the Macintosh XL (0r Lisa 2/5) running MacWorks that allows the Lisa with a hard disk to serve as a file server and print spooler for Appletalk*. Includes hard disk partitioning, security and special hard disk backup software. The Partitioning and backup utilities make it attractive even without Appletalk* applications in mind. ------------------------------ Date: Thu 14 Mar 85 06:41:30-PST From: DBECK@SRI-KL.ARPA Subject: Beta Software It is interesting to observe the extent of Beta software floating around for the Mac. As an experiment I built an Ultimate Beta disc to see what would happen. Finder 3.0x, Application Switcher 1.5, MacWrite4.2 and MacDraw manynines. After some tentative probing, all these elements appear to work together quite well, and no bomb icons have been seen in several days of fairly heavy use. Press on Apple, be not faint of heart! ...Doug Beck dbeck@sri-kl ------------------------------ End of INFO-MAC Digest **********************