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: cmp r1,$etabtab 187: bhis 1f 188: jsr r5,number; 0 189: jsr pc,min 190: dec r0 191: ble 1f 192: movb r0,(r1)+ 193: br 1b 194: 1: 195: clrb (r1) 196: rts pc 197: 198: caseti: 199: jsr pc,rbreak 200: jsr r5,number; in 201: jsr pc,min 202: mov r0,un 203: rts pc 204: 205: caseul: 206: jsr r5,number; 0 207: jsr pc,min 208: mov r0,ul 209: rts pc 210: 211: caseun: 212: jsr r5,number; 0 213: sub in,r0 214: neg r0 215: jsr pc,min 216: mov r0,un 217: rts pc 218: 219: casehx: 220: tst hx 221: beq 1f 222: clr hx 223: br 2f 224: 1: 225: inc hx 226: 2: 227: jsr pc,topbot 228: rts pc 229: 230: casehe: 231: jsr r5,headin; ehead 232: mov ehead,ohead 233: rts pc 234: casefo: 235: jsr r5,headin; efoot 236: mov efoot,ofoot 237: rts pc 238: 239: caseeh: 240: jsr r5,headin; ehead 241: rts pc 242: 243: caseoh: 244: jsr r5,headin; ohead 245: rts pc 246: 247: caseef: 248: jsr r5,headin; efoot 249: rts pc 250: 251: caseof: 252: jsr r5,headin; ofoot 253: rts pc 254: 255: casem1: 256: jsr r5,number; ma1 257: jsr pc,min 258: mov r0,ma1 259: br 1f 260: 261: casem2: 262: jsr r5,number; ma2 263: jsr pc,min 264: mov r0,ma2 265: br 1f 266: 267: casem3: 268: jsr r5,number; ma3 269: jsr pc,min 270: mov r0,ma3 271: br 1f 272: 273: casem4: 274: jsr r5,number; ma4 275: jsr pc,min 276: mov r0,ma4 277: 1: 278: jsr pc,topbot 279: rts pc 280: 281: casehc: 282: jsr pc,skipcont 283: jsr pc,getchar 284: cmp r0,$'\n 285: bne 1f 286: movb $200,r0 287: 1: 288: mov r0,ohc 289: rts pc 290: 291: casetc: 292: jsr pc,skipcont 293: jsr pc,getchar 294: cmp r0,$'\n 295: bne 1f 296: mov $' ,r0 297: 1: 298: mov r0,tabc 299: rts pc 300: 301: casehy: 302: jsr r5,number; 0 303: mov r0,hyf 304: rts pc 305: 306: casen1: 307: jsr pc,rbreak 308: mov $1,numbmod 309: br 1f 310: casen2: 311: jsr pc,rbreak 312: mov $2,numbmod 313: 1: 314: clr nn 315: jsr r5,number; 0 316: tst r0 317: ble 1f 318: mov r0,lnumber 319: rts pc 320: 1: 321: clr numbmod 322: rts pc 323: 324: casenn: 325: jsr r5,number; 0 326: jsr pc,min 327: mov r0,nn 328: rts pc 329: 330: caseni: 331: jsr r5,number; ni 332: jsr pc,min 333: mov r0,ni 334: rts pc 335: 336: casejo: 337: jsr r5,number; 0 338: mov r0,jfomod 339: rts pc 340: 341: casear: 342: clr ro 343: rts pc 344: 345: casero: 346: inc ro 347: rts pc 348: 349: casenx: 350: jsr pc,skipcont 351: jsr r5,getname; nextf 352: inc nx 353: jsr pc,nextfile 354: inc nlflg 355: clr ip 356: mov $ilist,ilistp 357: rts pc 358: 359: casepo: 360: jsr pc,rbreak 361: jsr r5,number; po 362: jsr pc,min 363: mov r0,po 364: rts pc 365: 366: casede: 367: tst ip 368: bne 5f 369: jsr pc,skipcont 370: jsr r5,getname; bname 371: clr skp 372: mov $contab,r1 373: clr -(sp) 374: 1: 375: mov (r1)+,(sp) 376: beq 2f 377: bic $100000,(sp) 378: cmp bname,(sp) 379: bne 3f 380: 2: 381: bis $100000,bname 382: mov nextb,(r1) 383: mov bname,-(r1) 384: br 4f 385: 3: 386: cmp (r1)+,$-1 387: bne 1b 388: inc skp 389: 4: 390: tst (r1)+ 391: jsr pc,copyb 392: tst (sp)+ 393: 5: 394: rts pc 395: 396: caseig: 397: inc skp 398: jsr pc,copyb 399: rts pc 400: 401: casemk: 402: jsr pc,rbreak 403: mov $002,r0 /stx 404: jsr pc,putchar 405: rts pc