View previous topic :: View next topic
|
Author |
Message |
lee_issc
New User
Joined: 11 Dec 2008 Posts: 33 Location: China
|
|
|
|
Dear all,
Here is the compile information of my asm test program,pls tell me some information about why failed.thx!
[color=cyan] Active Usings: None
Loc Object Code Addr1 Addr2 Stmt Source Statement
000000 00000 00039 19 ASMTEST START
20 WTO IPHONE
000000 0000 0000 00000 23+ BAL 1,IHB0001A
** ASMA307E No active USING for operand IHB0001A
** ASMA435I Record 1381 in SYS1.MACLIB(WTO) on volume: ERES01
000008 26+ DC CIPHONE
** ASMA035S Invalid delimiter - IPHON
** ASMA435I Record 2030 in SYS1.MACLIB(WTO) on volume: ERES01
00000A 0000 0000 0000 00000 00000 29 MVC OPFX,IPFX
** ASMA307E No active USING for operand OPFX
** ASMA307E No active USING for operand IPFX
** ASMA435I Record 21 in TPT.HSI.OS390.SRCLIB(ASMTEST) on volume: SNDR36
000010 0000 0000 0000 00000 00000 30 MVC OHYPHEN,=CL1'-'
** ASMA307E No active USING for operand OHYPHEN
** ASMA307E No active USING for operand =CL1'-'
** ASMA435I Record 22 in TPT.HSI.OS390.SRCLIB(ASMTEST) on volume: SNDR36
000016 0000 0000 0000 00000 00000 31 MVC OLINE,ILINE
** ASMA307E No active USING for operand OLINE
** ASMA307E No active USING for operand ILINE
** ASMA435I Record 23 in TPT.HSI.OS390.SRCLIB(ASMTEST) on volu[/color]me: SNDR36 [/color] |
|
Back to top |
|
|
lee_issc
New User
Joined: 11 Dec 2008 Posts: 33 Location: China
|
|
|
|
EJECT
ASMTEST START
WTO IPHONE
MVC OPFX,IPFX
MVC OHYPHEN,=CL1'-'
MVC OLINE,ILINE
WTO OPHONE
LTORG
IPHONE DS 0CL7 NOTE THAT THE FIELD
IPFX DC CL3'555' DEFINITION FOR WHYPHEN
ILINE DC CL4'1212' HAS BEEN REMOVED.
*
OPHONE DS 0CL8
OPFX DS CL3
OHYPHEN DS CL1
OLINE DS CL4
END |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8697 Location: Dubuque, Iowa, USA
|
|
|
|
1. You did not establish addressability in the approved Assembler manner..
2. You did not set up the WTO parameters before issuing the macro.
3. You did not exit the program in the approved Assembler manner.
Many sites frown upon operator messages appearing on the console unless there is a good application reason for doing so. Are you sure your site approves of you doing this? |
|
Back to top |
|
|
lee_issc
New User
Joined: 11 Dec 2008 Posts: 33 Location: China
|
|
|
|
To robert sample,
yes,maybe i have no access to do this.I will contact my leader about that.thanks a lot. |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8697 Location: Dubuque, Iowa, USA
|
|
|
|
What does access have to do with it?
Assembler programs require you to set up addressability via a USING statement to set the base register before you start referencing memory locations. If you do not do this, memory addresses cannot be fixed within the load module.
For consistency, you should set up the save area trace as well, using the standard linking of save areas in case a dump needs to be processed. You also need to load register 14 from your save area and branch to it to exit the program, so you return to the calling program (which established register 14 as the return address when calling your program). This has to be done before the LTORG because otherwise your data will be interpreted as machine code, with unpredictable results.
If you do not know how to do these things, you need to learn the basics of assembler from a coworker, team leader, or book before attempting to write code. Assembler, unlike higher level languages, severely punishes deviations from the standards by generating abends that are difficult to resolve. |
|
Back to top |
|
|
|