🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: bit.listserv.asm370
Article #298

Re: assembly-language coding conventions (using patch areas)

#298
From: David Cole
Date: Sun, 04 Sep 2005 16:28
42 lines
3605 bytes
BBlack writes:
 > Another point: a pre-assembled patch area is usually
 > covered by an existing base register, while an EXTENDed
 > area may not be.

JGilmore wrote:
 > and this is certainly true. It is not, however, very
 > interesting. Base registers retain their traditional
 > usefulness for addressing blocks of constants and,
 > sometimes, DSECTs. For almost all other purposes much
 > better constructs are now available and should be used
 > instead.

BDissen wrote:
 > It is much better to use a pre-calculated base/displacement
 > than to [manually] calculate the relative offset and divide
 > by two (and is it relative to the current instruction
 > address, or the new PSW? Same for BRC and LARL? - I should
 > look it up).
 >
 > It is better to reduce the chance of error, rather than make
 > things fancy.

Ben: The chance of error can be reduced *substantially* for large
zaps (now matter what addressing method you prefer) if you'd use an
ASM2ZAP program: a tool that scrapes a "PRINT ON,GEN,DATA" listing
and produces zap statements based on the extracted machine code.

Howard Gilbert of Yale's computer center wrote one decades ago. I
think it might be available on the CBT modes tape. It's also
available for free download from my web site at
"www.colesoft.com/utilities.html".

Developing a methodology for using ASM2ZAP is not that hard. Just
design an assembly that represents your intended zap and use
appropriate DSECT, ORG, and USING statements to make it congruent
with your intended target.

Dave Cole              REPLY TO: dbcole@colesoft.com
Cole Software          WEB PAGE: http://www.colesoft.com
736 Fox Hollow Road    VOICE:    540-456-8536
Afton, VA 22920        FAX:      540-456-6658
Technical Details
Message-ID: <6.2.3.4.2.20050904120926.050bf660@mail.swcp.com>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!news.glorb.com!newspeer.tds.net!sn-xit-02!sn-xit-06!sn-xit-14!supernews.com!149.173.6.116.MISMATCH!foggy!vm.sas.com!colesoft.com!dbcole
References: <BAY104-F28C22B6A59EC3E780DFFFEC6A50@phx.gbl> <5g6mh1t35014a3dnn2m5eafnagh15jem31@4ax.com>

Show Full Headers
Complete Article Headers
X-Google-Thread: fcdcb,ea441912545b0747
X-Google-Attributes: gidfcdcb,public
X-Google-Language: ENGLISH,ASCII-7-bit
Path: arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!news.glorb.com!newspeer.tds.net!sn-xit-02!sn-xit-06!sn-xit-14!supernews.com!149.173.6.116.MISMATCH!foggy!vm.sas.com!colesoft.com!dbcole
From: David Cole <dbcole@colesoft.com>
Newsgroups: bit.listserv.asm370
Subject: Re: assembly-language coding conventions (using patch areas)
Date: Sun, 4 Sep 2005 12:28:16 -0400
Organization: SAS Inc.
Lines: 42
Sender: IBM Mainframe Assembler List <ASSEMBLER-LIST@LISTSERV.UGA.EDU>
Message-ID: <6.2.3.4.2.20050904120926.050bf660@mail.swcp.com>
References: <BAY104-F28C22B6A59EC3E780DFFFEC6A50@phx.gbl>
            <5g6mh1t35014a3dnn2m5eafnagh15jem31@4ax.com>
NNTP-Posting-Host: mozart.unx.sas.com
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: foggy.unx.sas.com 1125851596 25567 10.19.150.41 (4 Sep 2005 16:33:16 GMT)
X-Complaints-To: usenet@unx.sas.com
NNTP-Posting-Date: Sun, 4 Sep 2005 16:33:16 +0000 (UTC)
Comments: Gated by NETNEWS@VM.SAS.COM
Return-Path: <owner-assembler-list@LISTSERV.UGA.EDU>
X-Mailer: QUALCOMM Windows Eudora Version 6.2.3.4
X-Virus-Scanned: ClamAV 0.86.1/1062/Sun Sep  4 01:55:30 2005 on av1
X-Virus-Status: Clean
X-Spam-Checker-Version: SpamAssassin 3.0.4 (2005-06-05) on kaimen.swcp.com
X-Spam-Status: No,
               hits=-2.4 required=10.0 tests=ALL_TRUSTED autolearn=failed
               version=3.0.4
Approved-By: David Cole <dbcole@COLESOFT.COM>
In-Reply-To: <5g6mh1t35014a3dnn2m5eafnagh15jem31@4ax.com>
Return-Path: owner-assembler-list@LISTSERV.UGA.EDU
X-OriginalArrivalTime: 04 Sep 2005 16:33:14.0084 (UTC)
                       FILETIME=[58989240:01C5B16E]
Originator: daemon@mozart.unx.sas.com