From: MERC::"uunet!asc-yf.WPAFB.AF.MIL!nieland_t" 19-NOV-1992 07:23:17.13 To: DECUS-PORTERS@asc-yf.wpafb.af.mil CC: Subj: Updated list of hints Here is my updated list of hints, based on the inputs I have received so far. I still don't have much to put in the [HINTS] directory on the CD. I need to receive any updates for 1700 EST today. BTW, spent the last couple days going back and forth with Digital on some problems with VEST. It found some problems with itself while trying to VEST the MODIFY program from the Spring 92 VAX SIG Tape. Submitted the first SPR I have had to do in a very long time. Ted -------------------------------- C Code: Lots of updating #includes to use correct syntax including "<" and ".h>". Example programs, C-Kermit and Z-Modem. Some updating of programs to explicit type pointers. Example program: X-Modem. Some programs define extern variables that have not been declared at any higher level. The VAX Linker and VAX C let you get away with that, but DEC C and the AXP Linker will not. Example program: Z-Modem Some system level programs need to have "#pragma nomember_alignment" around data structures to make sure the compiler doesn't affect the data structures that the program will be using. Example program: VERB For people trying to write C code on a VAX that will run on a ALPHA, one thing you can do help check out the program is use the command "CC/STANDARD=PORTABLE". If you code compiles using that command is highly likely it will compile and link fine on a Alpha AXP. Note that most of the programs on this disk were compiled on the Alpha AXP using a DEC C option of /STANDARD=VAXC which made porting much easier on the porting team. However, the VAXC option on DEC C still errors many items that VAX C doesn't. FORTRAN code: Lot's of programs have unaligned data. Especially in common blocks. Example program BULLETIN (This program has not been ported yet) Many programs are using language features from PDP FORTRAN which DEC FORTRAN doesn't support: Example programs BULLETIN, FORTRAN version of X-Modem (These programs have not been ported yet) Some programs used common blocks to build data segments to pass to System Routines. These need to be changed to STRUCTURES in some cases. Example program SEND General Comments: Programs that use T-PARSE need to have those sections re-written as T-Parse has been replaced in OpenVMS for AXP. Example programs ZDEC, FILE, WATCHER Seveal programs that use MACRO routines should look at writing the routines in higher level languages. Many of those MACRO pieces will not port over easily. Example programs: MODIFY, FINGER (These programs have not been ported yet) Some programs are linking to system libraries that are translated images and create strange requirements, like having to be linked using "/NONATIVE" Example programs: SETDEF, SWING