1: / 2: / 3: 4: / roff2 -- runoff 5: 6: casead: 7: jsr pc,rbreak 8: inc ad 9: rts pc 10: 11: rts pc 12: 13: casebr: 14: jsr pc,rbreak 15: rts pc 16: 17: casecc: 18: jsr pc,skipcont 19: jsr pc,getchar 20: cmp r0,$'\n 21: beq 1f 22: movb r0,cc 23: 1: 24: mov r0,ch 25: rts pc 26: 27: casece: 28: jsr pc,rbreak 29: jsr r5,number; 0 30: jsr pc,min 31: mov r0,ce 32: jsr pc,need 33: rts pc 34: 35: caseds: 36: jsr pc,rbreak 37: mov $2,ls 38: rts pc 39: 40: casefi: 41: jsr pc,rbreak 42: inc fi 43: rts pc 44: 45: casein: 46: jsr pc,rbreak 47: jsr r5,number; in 48: jsr pc,min 49: mov r0,in 50: mov r0,un 51: rts pc 52: 53: caseix: 54: jsr r5,number; in 55: jsr pc,min 56: mov r0,in 57: rts pc 58: 59: caseli: 60: jsr r5,number; 0 61: mov r0,-(sp) 62: 1: 63: dec (sp) 64: blt 1f 65: jsr pc,flushi 66: clr nlflg 67: jsr pc,text 68: br 1b 69: 1: 70: tst (sp)+ 71: rts pc 72: 73: casell: 74: jsr r5,number; ll 75: jsr pc,min 76: mov r0,ll 77: rts pc 78: 79: casels: 80: jsr pc,rbreak 81: jsr pc,skipcont 82: jsr pc,getchar 83: cmp r0,$'\n 84: bne 1f 85: mov ls1,ls 86: rts pc 87: 1: 88: mov r0,ch 89: jsr r5,number1; ls 90: dec r0 91: jsr pc,min 92: inc r0 93: mov r0,ls 94: mov r0,ls1 95: rts pc 96: 97: casena: 98: jsr pc,rbreak 99: clr ad 100: rts pc 101: 102: casene: 103: jsr r5,number; 0 104: jsr pc,min 105: jsr pc,need 106: rts pc 107: 108: casenf: 109: jsr pc,rbreak 110: clr fi 111: rts pc 112: 113: casepa: 114: casebp: 115: jsr pc,rbreak 116: jsr pc,eject 117: jsr pc,skipcont 118: tst nlflg 119: bne 1f 120: jsr r5,number; pn 121: jsr pc,min 122: mov r0,pn 123: 1: 124: rts pc 125: 126: casebl: 127: jsr pc,rbreak 128: jsr r5,number; 0 129: jsr pc,min 130: mov r0,-(sp) 131: jsr pc,need2 132: 1: 133: dec (sp) 134: blt 1f 135: mov $' ,r0 136: jsr pc,storeline 137: jsr pc,rbreak 138: br 1b 139: 1: 140: tst (sp)+ 141: rts pc 142: 143: casepl: 144: jsr r5,number; pl 145: mov r0,pl 146: jsr pc,topbot 147: rts pc 148: 149: casesk: 150: jsr r5,number; 0 151: jsr pc,min 152: mov r0,skip 153: rts pc 154: 155: casesp: 156: jsr pc,rbreak 157: jsr r5,number; 0 158: jsr r5,nlines; nline 159: rts pc 160: 161: casess: 162: jsr pc,rbreak 163: mov $1,ls 164: rts pc 165: 166: casetr: 167: jsr pc,skipcont 168: 1: 169: jsr pc,getchar 170: cmp r0,$'\n 171: beq 1f 172: mov r0,r1 173: jsr pc,getchar 174: cmp r0,$'\n 175: bne 2f 176: mov $' ,r0 177: 2: 178: movb r0,trtab(r1) 179: br 1b 180: 1: 181: rts pc 182: 183: caseta: 184: mov $tabtab,r1 185: 1: 186: jsr r5,number; 0 187: jsr pc,min 188: dec r0 189: ble 1f 190: movb r0,(r1)+ 191: br 1b 192: 1: 193: clrb (r1)+ 194: rts pc 195: 196: caseti: 197: jsr pc,rbreak 198: jsr r5,number; in 199: jsr pc,min 200: mov r0,un 201: rts pc 202: 203: caseul: 204: jsr r5,number; 0 205: jsr pc,min 206: mov r0,ul 207: rts pc 208: 209: caseun: 210: jsr r5,number; 0 211: sub in,r0 212: neg r0 213: jsr pc,min 214: mov r0,un 215: rts pc 216: 217: casehx: 218: tst hx 219: beq 1f 220: clr hx 221: br 2f 222: 1: 223: inc hx 224: 2: 225: jsr pc,topbot 226: rts pc 227: 228: casehe: 229: jsr r5,headin; ehead 230: mov ehead,ohead 231: rts pc 232: casefo: 233: jsr r5,headin; efoot 234: mov efoot,ofoot 235: rts pc 236: 237: caseeh: 238: jsr r5,headin; ehead 239: rts pc 240: 241: caseoh: 242: jsr r5,headin; ohead 243: rts pc 244: 245: caseef: 246: jsr r5,headin; efoot 247: rts pc 248: 249: caseof: 250: jsr r5,headin; ofoot 251: rts pc 252: 253: casem1: 254: jsr r5,number; ma1 255: jsr pc,min 256: mov r0,ma1 257: br 1f 258: 259: casem2: 260: jsr r5,number; ma2 261: jsr pc,min 262: mov r0,ma2 263: br 1f 264: 265: casem3: 266: jsr r5,number; ma3 267: jsr pc,min 268: mov r0,ma3 269: br 1f 270: 271: casem4: 272: jsr r5,number; ma4 273: jsr pc,min 274: mov r0,ma4 275: 1: 276: jsr pc,topbot 277: rts pc 278: 279: casehc: 280: jsr pc,skipcont 281: jsr pc,getchar 282: cmp r0,$'\n 283: bne 1f 284: movb $200,r0 285: 1: 286: mov r0,ohc 287: rts pc 288: 289: casetc: 290: jsr pc,skipcont 291: jsr pc,getchar 292: cmp r0,$'\n 293: bne 1f 294: mov $' ,r0 295: 1: 296: mov r0,tabc 297: rts pc 298: 299: casehy: 300: jsr r5,number; 0 301: mov r0,hyf 302: rts pc 303: 304: casen1: 305: jsr pc,rbreak 306: mov $1,numbmod 307: br 1f 308: casen2: 309: jsr pc,rbreak 310: mov $2,numbmod 311: 1: 312: clr nn 313: jsr r5,number; 0 314: tst r0 315: ble 1f 316: mov r0,lnumber 317: rts pc 318: 1: 319: clr numbmod 320: rts pc 321: 322: casenn: 323: jsr r5,number; 0 324: jsr pc,min 325: mov r0,nn 326: rts pc 327: 328: caseni: 329: jsr r5,number; ni 330: jsr pc,min 331: mov r0,ni 332: rts pc 333: 334: casejo: 335: jsr r5,number; 0 336: mov r0,jfomod 337: rts pc 338: 339: casear: 340: clr ro 341: rts pc 342: 343: casero: 344: inc ro 345: rts pc 346: 347: casenx: 348: jsr pc,skipcont 349: jsr r5,getname; nextf 350: inc nx 351: jsr pc,nextfile 352: inc nlflg 353: clr ip 354: mov $ilist,ilistp 355: rts pc 356: 357: casepo: 358: jsr pc,rbreak 359: jsr r5,number; po 360: jsr pc,min 361: mov r0,po 362: rts pc 363: 364: casede: 365: tst ip 366: bne 5f 367: jsr pc,skipcont 368: jsr r5,getname; bname 369: clr skp 370: mov $contab,r1 371: clr -(sp) 372: 1: 373: mov (r1)+,(sp) 374: beq 2f 375: bic $100000,(sp) 376: cmp bname,(sp) 377: bne 3f 378: 2: 379: bis $100000,bname 380: mov nextb,(r1) 381: mov bname,-(r1) 382: br 4f 383: 3: 384: cmp (r1)+,$-1 385: bne 1b 386: inc skp 387: 4: 388: tst (r1)+ 389: jsr pc,copyb 390: tst (sp)+ 391: 5: 392: rts pc 393: 394: caseig: 395: inc skp 396: jsr pc,copyb 397: rts pc 398: 399: casemk: 400: jsr pc,rbreak 401: mov $002,r0 /stx 402: jsr pc,putchar 403: rts pc