Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

Compile failed with a easy test asm program

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> PL/I & Assembler
View previous topic :: :: View next topic  
Author Message
lee_issc

New User


Joined: 11 Dec 2008
Posts: 33
Location: China

PostPosted: Thu Jul 02, 2009 1:52 pm    Post subject: Compile failed with a easy test asm program
Reply with quote

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
View user's profile Send private message

lee_issc

New User


Joined: 11 Dec 2008
Posts: 33
Location: China

PostPosted: Thu Jul 02, 2009 1:56 pm    Post subject:
Reply with quote

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
View user's profile Send private message
Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 7932
Location: Bellevue, IA

PostPosted: Thu Jul 02, 2009 5:16 pm    Post subject:
Reply with quote

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
View user's profile Send private message
lee_issc

New User


Joined: 11 Dec 2008
Posts: 33
Location: China

PostPosted: Tue Jul 07, 2009 7:28 am    Post subject:
Reply with quote

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
View user's profile Send private message
Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 7932
Location: Bellevue, IA

PostPosted: Tue Jul 07, 2009 8:20 am    Post subject:
Reply with quote

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
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> PL/I & Assembler All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts Executing OO COBOL program invoking J... Virendra Shambharkar COBOL Programming 2 Tue Jan 10, 2017 6:37 pm
No new posts OO COBOL compile error Virendra Shambharkar COBOL Programming 3 Tue Jan 10, 2017 6:05 pm
No new posts Need Suggestion on COBOL program vickey_dw COBOL Programming 5 Thu Jan 05, 2017 10:55 pm
No new posts I can not compile my program PL1 V3.R... Miguel Fernandez PL/I & Assembler 13 Tue Dec 06, 2016 8:30 pm
No new posts IMS BMP program causes 878 system abend Artemk IMS DB/DC 7 Tue Nov 22, 2016 8:26 pm


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us