* RTC TEST PROGAM PAGE 0001 0001 * RTC TEST PROGAM 0002 * TEST INTERRUPT AND CLOCK MECHANISM 0003 * THE RTC OF THE SIMULATOR IS SYNCHRONIZED WITH THE CLOCK OF THE PC 0004 * THAT RUNS THE SIMULATOR. THIS TEST PROGRAM PRINTS THE WALL TIME AS 0005 * DERIVED FROM THE SIMULATOR CLOCK SO ITS ACCURACY CAN BE CHECKED. 0006 * 0007 * 0008 IDENT TSTRTC 0009 AORG /1000 0010 RTC EQU /3F DEVICE ADDRESS REAL TIME CLOCK 0011 ASR EQU /10 DEVICE ADDRESS TTY 0012 IRTC EQU /44 INTERRUPT ADDRESS CLOCK 0013 S EQU 1 START 0014 H EQU 0 HALT 0015 * 0016 ST EQU * START ADDRESS 0017 1000 20BF INH 0018 1002 86A0 LDKL A14,LSK SET LINK STACK PPOINTER 1004 112E A 0019 1006 8120 LDKL A1,INTCLK ADDRESS CLOCK INTERRUPT ROUTINE 1008 1130 A 0020 100A 8141 ST A1,IRTC TO CLOCK INTERRUPT ADDRESS 100C 0044 A 0021 100E 8120 LDKL A1,-10 GRID = 1 SECOND (10HZ CLOCK => 10 PULSES IS 1 SEC) 1010 FFF6 A 0022 1012 8141 ST A1,TIME RESET TIME 1014 111C A 0023 1016 0100 LDK A1,0 0024 1018 8141 ST A1,SEC RESET WALL TIME COUNTERS 101A 111E A 0025 101C 8141 ST A1,MINUTE 101E 1120 A 0026 1020 8141 ST A1,HOUR 1022 1122 A 0027 1024 41FF CIO A1,S,RTC START CLOCK 0028 1026 8120 LDKL A1,/FFFF 1028 FFFF A * RTC TEST PROGAM PAGE 0002 0029 102A 4100 WIM A1 DISABLE ALL COMMON LINE INTERRUPTS 0030 * 0031 * READ INITIAL CLOCK VALUES (HOUR/MINUTE) TO SET WALL TIME 0032 102C 0620 RC1 LDK A6,/20 READ HOUR, NUMBER < 24 0033 102E F6A1 CF A14,ASCOUT 1030 1192 A 0034 1032 0648 LDK A6,/48 0035 1034 F6A1 CF A14,ASCOUT 1036 1192 A 0036 1038 F6A1 CF A14,ASCOUT HH 103A 1192 A 0037 103C F6A1 CF A14,ASCIN 103E 117E A 0038 1040 1E30 SUK A6,/30 1ST DIGIT 0039 1042 8098 MT1 LDR A8,A6 0040 1044 3E02 SLA A6,2 *4 0041 1046 9098 ADR A8,A6 *5 0042 1048 9082 ADR A8,A8 *10 0043 104A F6A1 CF A14,ASCIN 104C 117E A 0044 104E 1E30 SUK A6,/30 2ND DIGIT 0045 1050 9098 ME1 ADR A8,A6 0046 1052 E8A0 CWK A8,24 1054 0018 A 0047 1056 5E2C RB(6) RC1 AGAIN 0048 1058 80C1 ST A8,HOUR STORE HOUR 105A 1122 A 0049 * 0050 105C 0620 RC2 LDK A6,/20 READ MINUTE, NUMBER < 60 0051 105E F6A1 CF A14,ASCOUT 1060 1192 A 0052 1062 064D LDK A6,/4D 0053 1064 F6A1 CF A14,ASCOUT 1066 1192 A 0054 1068 F6A1 CF A14,ASCOUT MM 106A 1192 A 0055 106C F6A1 CF A14,ASCIN * RTC TEST PROGAM PAGE 0003 106E 117E A 0056 1070 1E30 SUK A6,/30 1ST DIGIT 0057 1072 8098 MT2 LDR A8,A6 0058 1074 3E02 SLA A6,2 *4 0059 1076 9098 ADR A8,A6 *5 0060 1078 9082 ADR A8,A8 *10 0061 107A F6A1 CF A14,ASCIN 107C 117E A 0062 107E 1E30 SUK A6,/30 2ND DIGIT 0063 1080 9098 ME2 ADR A8,A6 0064 1082 E8A0 CWK A8,60 1084 003C A 0065 1086 5E5C RB(6) RC1 AGAIN 0066 1088 80C1 ST A8,MINUTE STORE MINUTE 108A 1120 A 0067 108C 060D LDK A6,/D 0068 108E F6A1 CF A14,ASCOUT 1090 1192 A 0069 1092 060A LDK A6,/A 0070 1094 F6A1 CF A14,ASCOUT 1096 1192 A 0071 1098 2840 ENB 0072 * 0073 * LOOP; 1) PRINTS EACH SECOND A * 0074 * 2) PRINTS EACH MINUTE THE WALL TIME 0075 109A 8640 LOOPM LD A6,MINUTE 109C 1120 A 0076 109E 8641 ST A6,CHKM 10A0 1118 A 0077 10A2 8640 LOOPS LD A6,SEC 10A4 111E A 0078 10A6 8641 ST A6,CHKS 10A8 111A A 0079 * 0080 10AA 8640 CL0 LD A6,SEC 10AC 111E A 0081 10AE EE40 CW A6,CHKS * RTC TEST PROGAM PAGE 0004 10B0 111A A 0082 10B2 580A RB(0) CL0 0083 10B4 062A LDK A6,/2A * SECOND OVER 0084 10B6 F6A1 CF A14,ASCOUT 10B8 1192 A 0085 10BA 8640 LD A6,MINUTE 10BC 1120 A 0086 10BE EE40 CW A6,CHKM 10C0 1118 A 0087 10C2 5822 RB(0) LOOPS 0088 10C4 060D LDK A6,/D MINUTE OVER 0089 10C6 F6A1 CF A14,ASCOUT 10C8 1192 A 0090 10CA 060A LDK A6,/A 0091 10CC F6A1 CF A14,ASCOUT 10CE 1192 A 0092 * 0093 * PRINT WALL TIME IN DECIMAL 0094 10D0 20BF INH 0095 10D2 0100 LDK A1,0 0096 10D4 8240 LD A2,HOUR 10D6 1122 A 0097 10D8 C820 DVK 10 10DA 000A A 0098 10DC 8608 LDR A6,A2 0099 10DE 8084 LDR A8,A1 SAVE REMAINDER 0100 10E0 2840 ENB 0101 10E2 1630 ADK A6,/30 0102 10E4 F6A1 CF A14,ASCOUT 10E6 1192 A 0103 10E8 8602 LDR A6,A8 0104 10EA 1630 ADK A6,/30 0105 10EC F6A1 CF A14,ASCOUT 10EE 1192 A 0106 10F0 063A LDK A6,/3A 0107 10F2 F6A1 CF A14,ASCOUT 10F4 1192 A * RTC TEST PROGAM PAGE 0005 0108 10F6 20BF INH 0109 10F8 0100 LDK A1,0 0110 10FA 8240 LD A2,MINUTE 10FC 1120 A 0111 10FE C820 DVK 10 1100 000A A 0112 1102 8608 LDR A6,A2 0113 1104 8084 LDR A8,A1 SAVE REMAINDER 0114 1106 2840 ENB 0115 1108 1630 ADK A6,/30 0116 110A F6A1 CF A14,ASCOUT 110C 1192 A 0117 110E 8602 LDR A6,A8 0118 1110 1630 ADK A6,/30 0119 1112 F6A1 CF A14,ASCOUT 1114 1192 A 0120 1116 5F7E RB LOOPM 0121 * 0122 1118 0000 A CHKM DATA 0 0123 111A 0000 A CHKS DATA 0 0124 * CLOCK DATA 0125 111C 0000 A TIME DATA 0 0126 111E 0000 A SEC DATA 0 0127 1120 0000 A MINUTE DATA 0 0128 1122 0000 A HOUR DATA 0 0129 * 0130 * SUBR LINK STACK 0131 1124 RES 6 0132 LSK EQU *-2 0133 * 0134 * CLOCK INTERRUPT ROUTINE 0135 INTCLK EQU * 0136 1130 20F7 RIT /1B RESET CLOCK INTERRUPT 0137 1132 9041 IM TIME 1134 111C A 0138 1136 5002 RF(0) KLOK 0139 1138 F03E RTN A15 * RTC TEST PROGAM PAGE 0006 0140 * 0141 * GRID OVERFLOW (AFTER 10 PULSES) 0142 KLOK EQU * 0143 113A 8120 LDKL A1,-10 113C FFF6 A 0144 113E 8141 ST A1,TIME RESET GRID COUNTER 1140 111C A 0145 1142 0100 LDK A1,0 0146 1144 0201 LDK A2,1 0147 1146 8340 LD A3,SEC 1148 111E A 0148 114A 9308 ADR A3,A2 0149 114C EB20 CWK A3,60 114E 003C A 0150 1150 5006 RF(0) M 0151 1152 8341 ST A3,SEC 1154 111E A 0152 1156 F03E RTN A15 0153 * SECOND OVERFLOW 0154 1158 8141 M ST A1,SEC 115A 111E A 0155 115C 8340 LD A3,MINUTE 115E 1120 A 0156 1160 9308 ADR A3,A2 0157 1162 EB20 CWK A3,60 1164 003C A 0158 1166 5006 RF(0) U 0159 1168 8341 ST A3,MINUTE 116A 1120 A 0160 116C F03E RTN A15 0161 * MINUTE OVERFLOW 0162 116E 8141 U ST A1,MINUTE 1170 1120 A 0163 1172 8340 LD A3,HOUR 1174 1122 A 0164 1176 9308 ADR A3,A2 0165 1178 8341 ST A3,HOUR * RTC TEST PROGAM PAGE 0007 117A 1122 A 0166 117C F03E RTN A15 0167 * 0168 * PRINT CHARACTER ON TTY 0169 117E 0701 ASCIN LDK A7,1 INPUT MODE 0170 1180 47D0 CIO A7,S,ASR 0171 1182 5C04 RB(4) *-2 0172 1184 4E10 INR A6,0,ASR 0173 1186 5C04 RB(4) *-2 0174 1188 267F ANK A6,/7F MASK 7 BITS 0175 118A 4790 CIO A7,H,ASR 0176 118C 4FD0 SST A7,ASR 0177 118E 5C04 RB(4) *-2 0178 1190 F03A RTN A14 0179 * 0180 * READ CHARACTER FROM TTY 0181 1192 0700 ASCOUT LDK A7,0 OUTPUT MODE 0182 1194 47D0 CIO A7,S,ASR 0183 1196 5C04 RB(4) *-2 0184 1198 4610 OTR A6,0,ASR 0185 119A 5C04 RB(4) *-2 0186 119C 4790 CIO A7,H,ASR 0187 119E 4FD0 SST A7,ASR 0188 11A0 5C04 RB(4) *-2 0189 11A2 F03A RTN A14 0190 END * RTC TEST PROGAM PAGE 0008 SYMBOL TABLE ASCIN 117E A ASCOUT 1192 A ASR 0010 A CHKM 1118 A CHKS 111A A CL0 10AA A H 0000 A HOUR 1122 A INTCLK 1130 A IRTC 0044 A KLOK 113A A LOOPM 109A A LOOPS 10A2 A LSK 112E A M 1158 A ME1 1050 A ME2 1080 A MINUTE 1120 A MT1 1042 A MT2 1072 A RC1 102C A RC2 105C A RTC 003F A S 0001 A SEC 111E A ST 1000 A TIME 111C A U 116E A End of assembly, 0 errors.