Table of Contents

RDCARD Source

References

Source Listing

RDCARD.MACRO.txt
  1. MACRO 00001000
  2. &LABEL RDCARD &BUFFER,&LENGTH,&ERROR=*+4 00002000
  3. LCLC &BUF,&LEN 00003000
  4. CNOP 0,4 00004000
  5. &LABEL DS 0H 00005000
  6. AIF (T'&BUFFER EQ 'O').ERR1 00006000
  7. &BUF SETC '&BUFFER' 00007000
  8. AIF ('&BUFFER'(1,1) NE '(').SKIP1 00008000
  9. &BUF SETC '0' 00009000
  10. ST &BUFFER(1),DMS&SYSNDX.A 00010000
  11. MVI DMS&SYSNDX.A,X'80' 00011000
  12. .SKIP1 ANOP 00012000
  13. &LEN SETC '80' 00013000
  14. AIF (T'&LENGTH EQ 'O').SKIP2 00014000
  15. &LEN SETC '&LENGTH' 00015000
  16. AIF ('&LENGTH'(1,1) NE '(').SKIP2 00016000
  17. &LEN SETC '0' 00017000
  18. STH &LENGTH(1),DMS&SYSNDX.B 00018000
  19. STH &LENGTH(1),DMS&SYSNDX.B+2 00019000
  20. .SKIP2 ANOP 00020000
  21. BAL 1,DMS&SYSNDX.C 00021000
  22. DC CL8'CARDRD' 00022000
  23. DMS&SYSNDX.A DC X'80',AL3(&BUF) 00023000
  24. DMS&SYSNDX.B DC H'&LEN',H'&LEN' 00024000
  25. DMS&SYSNDX.C SVC 202 00025000
  26. DC AL4(*+4) 00026000
  27. LH 0,DMS&SYSNDX.B+2 00027000
  28. AIF ('&ERROR' EQ '*+4').EXIT 00028000
  29. LTR 15,15 00029000
  30. BNZ &ERROR 00030000
  31. .EXIT MEXIT 00031000
  32. .ERR1 MNOTE 8,'BUFFER ADDRESS NOT SPECIFIED' 00032000
  33. MEND 00033000