May 91 Mousehole
Volume Number: | | 7
|
Issue Number: | | 5
|
Column Tag: | | Mousehole Report
|
Mac to Vax Problems
By Larry Nedry, Mousehole BBS
From: Hweiss
Re: Object code debugging
There have been occasions where I need to debug an application outside of the THINK C environment. I decided to teach myself how to do object code debugging with TMON and Knasters book on the subject. I managed to find a THINK C port of the Pascal source used in Knasters Showoff example. The resulting application duplicates the same bugs as the Pascal version, however, due to the differences in the object code generated by the two different compilers and the fact that I am using a IIci (not a Mac Plus which generates an address error instead of a bus error when you double-dereference a Nil handle), I am having a great deal of difficulty following the text as the author explains the process of debugging with TMON. Would anyone have any suggestions how I can overcome these obstacles? Thanks.
From: Btoback
Re: Object code debugging
This might not be a terribly constructive suggestion, but use Jasiks Debugger rather than TMON. Its a combined source/object debugger that is a lot easier to use than TMON. It does work with Think C. The only disadvantage is that its about twice the price of TMON. Its worth the difference. Because its a combined debugger, you can easily figure out which source statements generated which object code.
From: Gator
Re: >32K data items
Im having a problem with an array to hold an image of greater than 32k in length. I am aware of the problems with global and static data larger than 32k and am using a call to NewPtr to allocate the required memory.
However when I view my image it seems that all data beyond 32k is either corrupted or absent. Downsizing my image to less than 32k takes care of the problem. The following is a fragment of my code:
main()
{
unsigned char *Image;
Image = NewPtr( myImageSize );
Id appreciate any info on what to look out for. Thanks.
From: Sysop
Re: >32K data items
What compiler are you using?
I you are using a signed short for indexing into the array then that would explain why you cant access the rest of the array.
From: Mrteague
Re: >32K data items
Also make sure the argument you pass to NewPtr is a LONG - you might want to verify that you have more than 32K allocated by doing a Heap Dump in MacsBug. If not, the garbage could be coming from anything in memory, following your memory block.
From: Ray
Re: PICTS in dialog boxes
I am using PICTS as logos and/or visual aids in alerts and dialog boxes. I put them in as PICT resources using ResEdit 2.1, then include them in the DITL. Ive noticed that when the dialog/alert comes up, it takes a long time (2-3 seconds) to display the PICT. You can see it being painted on the screen. This is with a Mac IIcx, which should be no slouch in the screen painting department. The PICTS originated in MacDraw. Could this be the problem? Should these be bit-mapped graphics instead? Id like to have the whole dialog including the PICT flash up on the screen instantaneously.
From: Dave
Re: PICTS in dialog boxes
The usual way to handle this is to draw the dialog contents into an offscreen buffer and then blit the contents to the screen. You *could* use bitmap picts, but do you want to pay the storage overhead?
From: Kim
Re: Mac to Vax...burp!
To whom they think they know...:
We have been having a real problem with PostScript text files that have been generated in Mac applications by holding COMMAND-K, while clicking on the Print button in the printing dialog of most Mac apps. Using v6.0 of the Laserwriter driver and (at least) System 6.02, we get standard Mac text files that we then try to upload to a Vax using a Kermit transfer Protocol in White Knight. If the transfer is binary, we have no problem... but for text transfers the transfer is never completed, bailing out at about 33,000 characters. After looking in the PS text file, I have found that the LaseWriter driver inserts 2 instances of <LF>eexec<LF>, or, eexec flanked by 2 Linefeed characters ($0A). What gives?
I dont know much about VMS, or the various file-types available under the same OS, but it appears that the Vax chokes on Mac text files.
Several PCs that perform the same transfer with WordPerfect PS files all have no problems, either with the transfer or with printing. The Mac files, even though we can get them transferred, cant print to a Laser- Writer under VMS !!!! I think I might have to write a conversion utility that I can execute in White Knight as an RCMD...at least this seems preferable to buying DECs PathWorks S/W, and a Mac, and listening to everything that DEC and Apple tell us. Maybe I have to learn more about VMS/file types/text-files.
Has anybody else done this, and if so, what results did they get? Did they have the same problems, and most importantly, how did they get around them? This ones really got me(and apparently Apple) stumped.
This week Im going to send Apple our stuff (S/W, scripts, VMS Kermit), so they can load it on their VAX to try and better define (resolve..) the problem.
It should be said that up here, in Canada, Apple has been most attentive to our problem, as has FreeSoft, the makers of White Knight. Ill try and get back on this board later on in the week.
From: Mward
Re: Mac to Vax...burp!
Kermit attempts to perform whatever conversions are needed in order to make files passed in text mode readable on the various machines it is hosted on. Mac files use a carriage return to signify end-of-line. Im not sure what VMS uses. MS-DOS uses carriage return/line feed. I have found that you really have to experiment with Kermit to find the best transfer mode for any given purpose.
I have not had any luck printing Mac generated Postscript file either on a Vax or on a Sun. My guess is that the Laser Prep routines are needed in the Laserwriter to print these files. If only someone would provide these in a downloadable form, or provide a Vax download program...
From: Kim
Re: Mac to Vax...burp!
If you look at about byte position 32333, you find several linefeed characters imbedded in the Laser Prep header. Actually, <LF>exec<LF>, I think. This seems to be where the transfer stops in Kermit. The Vax side sends an error message Kermits internal buffers are full, and the transfer just stops. But as you say, the most maddening part is that the Mac PS files wont print on the Vaxed LaserWriter!
I think Im going to try and write a small utility to convert the Macd PS files into the exact Vax equivalent, i.e., convert char-char-<CR> lines on Mac to <#of chars>char-char-...-<LF> on the Vax...if this is my understanding of Vax text files, which I think they (VMS) call stream_LF. The funny thing is that I cant get anybody who KNOWS exactly what is going on in VAXland either. Perhaps one of the translators in the print daemon, or maybe something the print queue does? Anyway, the good thing is that Ive had to learn a little about VMS and DCL (yeuch!!!)
From: Mward
Re: MAC TO DOS FILE CONVERSION.
Theres an application called PICTure This that will translate many types of PC graphics to PICT format. You will have to translate the graphics in a different step, of course.
From: Steinman
Re: GWorld Help
Im trying to write a program that presents an animated sequence of images that have been pre-loaded from a disk file. Does anybody know of any GWorld example code that sets up multiple GWorlds, each sharing the same GDevice and CLUT?
Thanks in advance,
Dr. Scott Steinman,
University of Missouri-St. Louis,
School of Optometry
From: Inbox
Re: ImageWriterII programming
I think this belongs more in this section than in hardware, so here goes...
The three-page escape code listing in the back of the IM2 manual says the following about printing stuff as bit image graphics:
(a sequence follows)
Print next nnnn bytes as bit image graphics
ESCAPE G nnnn 27 71 dddd (comment) nnnn = #
of bytes.
----
Q: How, in what format, must I send the nnnn? Do they mean that 4 bytes must be sent the values thereof somehow combined will determine the size of the bitmap to be sent? Should bytes the values of which are digits be sent? Should the ASCII values of digits be sent?
----
I think Ive tried all of these, and nothing seems to work properly. I mean, the damn thing would print, but it expects some huge byte #, for it doesnt recognize other control sequences Ive got at the end of the bitmap. HELP!
From: Don
Re: irregular windows
I am looking for some examples for showing how to make irregular shaped windows in Think C 4.0. Also how to work with regions. Can anyone out there help me.
From: Dave
Re: irregular windows
You should be looking for code for a WDEF resource. I know there is some out there.
From: Stet
Re: InterNet
I recently downloaded some Mac files to my Internet account. Now I would like to use my modem to remote login and then transfer the Mac Files from my Internet account to my Macintosh. I can remote login fine but I havent been able to transfer the files. Can anyone help?
From: Mrteague
Re: InterNet
Assuming that you can remote login into your InterNet account, and can see the files you downloaded when you do a ls, then you should be able to get the files without too much problem, if your site is any good.
What you need is a comms program on the non-Mac side - for example most UN*X based machines will have a xmodem utility, and the better machines will have zmodem in the form of the rz and sz utilities.
Try typing any of these commands and see what you get - most have help facilities. If all that fails, then with any luck (especially if your non-Mac machine is a VAX running VMS) there will be at least a Kermit file transfer implementation - it is a bit trickier to use, and its name be differ from machine to machine. Then are always conversion programs (like mget and mput etc) that are usually designed to be used with a FTP connection.
Anyway, if you manage to send a file from the non-Mac end, type the command in first, then have your Mac comms program start the receive (if it doesnt autostart). Once you have the file, you will probably find that it is BinHex format. Use something like StuffIt (any flavor) to convert the file to the appropriate Mac file.
If you still have problems after reading this msg, leave me a msg telling me what machines are involved, what operating systems etc, and I will see what I can do to help.
Hope this helps.
From: Stet
Re: InterNet
Thanks a million! Kermit did the trick. Unfortunately we dont have access to any xmodem or zmodem utilities. (It seemed that kermit ran a little slowly.) I am going to work on that though.
I just wanted to drop you a line and thank you for your time.
From: Willcox
Re: On Location
I just purchased On Location for use in searching through the source code of my Think Pascal projects. However, On Location is not able to index the text in a Think Pascal file saved in the non-text format.
Does anyone have an XTND file written for this type of file (Type = QPED, Creator = PJMM)?
From: Johnbaro
Re: video slot
Does anybody know how to find out what slot the video card(s) is/are in? I need to have a slot number to be able to sync with the vertical retrace. Thanks in advance.