TITLE[D0Test1]; *Test of D0 microassembler RV[RT0]; RV[RT1,3]; RV[RT2,3,33311]; MP[FOO,1]; MP[GARB,100000]; RV[RT3,,FOO,GARB]; START: T_0C; T_1C; T_177C; T_200C; T_377C; T_400C; T_177400C; T_(RT1)+(177600C); RT0_T; T_RT0; BRANCH[START,R ODD], A_RT0; GOTO[.+2,R EVEN]; LOOP: DBLBRANCH[G0,G1,ALU=0]; DBLGOTO[G0,G1,ALU<0]; DBLGOTO[G0,G1,CARRY]; DBLBRANCH[G0,G1,IOATTEN]; DBLBRANCH[G0,G1,R<0]; DBLBRANCH[G0,G1,R ODD]; DBLBRANCH[G0,G1,QUADOVF]; DBLBRANCH[G0,G1,MPCARRY]; DBLBRANCH[G0,G1,PSPENDING]; G0: RETURN; G1: CORETURN; LOOP1: STACK_T; STACK&-1_T; STACK&+1_T; STACK&-2_T; STACK&+2_T; STACK&-3_T; T_STACK; T_STACK&-1; T_STACK&+1; T_STACK&-2; T_STACK&+2; T_STACK&-3; LOOP2: T_PCF[RT3]; T_SB[RT3]; T_DB[RT3]; LOOP3: DATA[(LH[33] RH[44] AT[33])]; DATA[(LH[22] RH[33] AT[34])]; LOOP4: SET[J,0]; REPEAT[11,ILC[(SET[J,ADD[J,1]], T_LDF[RT1,J,10])]]; SET[J,0]; REPEAT[12,ILC[(SET[J,ADD[J,1]], T_LDF[RT1,J,7])]]; SET[J,0]; REPEAT[13,ILC[(SET[J,ADD[J,1]], T_LDF[RT1,J,6])]]; SET[J,0]; REPEAT[14,ILC[(SET[J,ADD[J,1]], T_LDF[RT1,J,5])]]; SET[J,0]; REPEAT[15,ILC[(SET[J,ADD[J,1]], T_LDF[RT1,J,4])]]; SET[J,0]; REPEAT[16,ILC[(SET[J,ADD[J,1]], T_LDF[RT1,J,3])]]; SET[J,0]; REPEAT[17,ILC[(SET[J,ADD[J,1]], T_LDF[RT1,J,2])]]; SET[J,0]; REPEAT[20,ILC[(SET[J,ADD[J,1]], T_LDF[RT1,J,1])]]; LOOP5: T_LDF[RT1,0,11]; T_LDF[RT1,0,12]; T_LDF[RT1,0,13]; T_LDF[RT1,0,14]; T_LDF[RT1,0,15]; T_LDF[RT1,0,16]; T_LDF[RT1,0,17]; LOOP6: SET[J,0]; REPEAT[11,ILC[(SET[J,ADD[J,1]], T_DISPATCH[RT1,J,10])]]; SET[J,0]; REPEAT[12,ILC[(SET[J,ADD[J,1]], T_DISPATCH[RT1,J,7])]]; SET[J,0]; REPEAT[13,ILC[(SET[J,ADD[J,1]], T_DISPATCH[RT1,J,6])]]; SET[J,0]; REPEAT[14,ILC[(SET[J,ADD[J,1]], T_DISPATCH[RT1,J,5])]]; SET[J,0]; REPEAT[15,ILC[(SET[J,ADD[J,1]], T_DISPATCH[RT1,J,4])]]; SET[J,0]; REPEAT[16,ILC[(SET[J,ADD[J,1]], T_DISPATCH[RT1,J,3])]]; SET[J,0]; REPEAT[17,ILC[(SET[J,ADD[J,1]], T_DISPATCH[RT1,J,2])]]; SET[J,0]; REPEAT[20,ILC[(SET[J,ADD[J,1]], T_DISPATCH[RT1,J,1])]]; LOOP7: SET[J,1]; REPEAT[17,ILC[(SET[J,ADD[J,1]],RT1_RSH[RT1,J])]]; LOOP8: SET[J,1]; REPEAT[17,ILC[(SET[J,ADD[J,1]],RT1_LSH[RT1,J])]]; LOOP9: SET[J,1]; REPEAT[17,ILC[(SET[J,ADD[J,1]],RT1_RCY[RT1,J])]]; LOOP10: SET[J,1]; REPEAT[17,ILC[(SET[J,ADD[J,1]],RT1_LCY[RT1,J])]]; LOOP11: T_RHMASK[RT1]; T_LHMASK[RT1]; LOOP12: STKP_RT1; CYCLECONTROL_RT1; SB_RT1; DB_RT1; -NBR_RT1; PCF_RT1; SALUF_T; CSIN_RT1; DISMISSFAULT; CTD_T; LOOP13: TPC_RT1; WRITELOWCS; WRITEHIGHCS; READCS; LOADCTD&TPC[T,RT1]; RESETPE; INCMPANEL; CLEARMPANEL; GENSRCLOCK; RESETTIMER; BOOT; SETFAULT; LOOP14: OUTPUT[RT1,T]; A_BBFA[RT1]; A_BBFB[RT1]; A_WFA[RT1]; A_WFB[RT1]; A_RF[RT1]; A_NEXTINST[RT0]; A_NEXTOP[RT0]; A_NEXTDATA[RT0]; TASK; IORESET; TASKRESET; FREEZEBC; LOOP15: T_RT1; T_LSH[RT1,3]; T_T; T_LOADCTD&TPC[T,RT1]; T_(RT1) AND T; T_(RT1) OR T; T_(RT1) XOR T; T_(RT1) # T; T_(RT1) AND NOT T; T_(RT1) OR NOT T; T_(RT1) XNOR T; T_(STACK) = T; T_(RT1)+1; T_(RT1)+T; T_(RT1)+T, USEALUCARRY; T_(RT1)+T+1; T_(RT1)-T; T_(RT1)-T-1; T_(RT1)-T-1, USEALUCARRY; T_SALUFOP[RT1,T]; LOOP16: PFETCH1[RT1,RT0]; PFETCH2[RT1,RT0]; PFETCH4[RT1,RT0]; PSTORE1[RT1,RT0]; PSTORE2[RT1,RT0]; PSTORE4[RT1,RT0]; WRITEMAP[RT1,RT0]; READMAP[RT1,RT0]; LOOP17: PFETCH1[RT1,RT0,0]; PFETCH2[RT1,RT0,17]; PFETCH4[RT1,RT0,1]; PSTORE1[RT1,RT0,2]; PSTORE2[RT1,RT0,10]; PSTORE4[RT1,RT0,17]; WRITEMAP[RT1,RT0,0]; READMAP[RT1,RT0,17]; LOOP18: IOFETCH4[RT1,0]; IOFETCH20[RT1,17]; IOSTORE4[RT1,20]; IOSTORE20[RT1,377]; IOFETCH4[RT1,0,0]; IOFETCH20[RT1,17,17]; IOSTORE4[RT1,200,0]; IOSTORE20[RT1,377,17]; LOOP19: INPUT[RT1]; INPUT[RT1,4]; END;