; PRTVAL.Z80 version 2.0 Jim Lill 17 Jan 88 ; ; PRTVAL uses a method referred to in M80 manuals for printing values ; during assembly. My earlier version required ' .RADIX n' to control ; format of the printed value. Adding a second macro solved that and ; I've eliminated the use of the '%' in each call. This means math ; must be done with EQU prior to the PRTVAL call. I find this acceptable ; as it helps maintain readability. ; ; SYNTAX: ; ; PRTVAL RADIX,,VALUE, ; | | | | ; | | | |___ 'trailing' message ; | | |___ value to be printed (no math here!) ; | |___ 'leading' message ; |___ radix of printed value 2, 10, 16 ;........................................................................ ; ; Put the following code in your program (a .LIB won't work) ;........................................................................ ; ; PRTVAL macro(s) prints text and value during assembly ; prtval2 macro m1,v1,m2 ; \ .printx m1 v1 m2 ; +- this is the print value macro endm ; / prtval macro r,msg1,val,msg2 ; \ .radix r ; passing the radix value prtval2 ,%val, ; requires the uses of 2 macros endm ; / ;......................................................................... ; ; DEMO of it's use. ; ==== start: org 0100h nop nop nop middle: prtval 16,,$,<> prtval 10,,$,< bytes> length equ middle - start prtval 10,,length,< bytes> ;................................ end