Source Code

000136,000001: # Copyright 2004 Ronald S. Burkey <info@sandroid.org> 000137,000002: # 000138,000003: # This file is part of yaAGC. 000139,000004: 000140,000005: # yaAGC is free software; you can redistribute it and/or modify 000141,000006: # it under the terms of the GNU General Public License as published by 000142,000007: # the Free Software Foundation; either version 2 of the License, or 000143,000008: # (at your option) any later version. 000144,000009: 000145,000010: # yaAGC is distributed in the hope that it will be useful, 000146,000011: # but WITHOUT ANY WARRANTY; without even the implied warranty of 000147,000012: # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 000148,000013: # GNU General Public License for more details. 000149,000014: 000150,000015: # You should have received a copy of the GNU General Public License 000151,000016: # along with yaAGC; if not, write to the Free Software 000152,000017: # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 000153,000018: 000154,000019: # Filename: ValidateCCS.agc 000155,000020: # Purpose: This is the part of the Validation program that validates 000156,000021: # just the CCS instruction. 000157,000022: # Mod history: 07/04/04 RSB. Began. 000158,000023: 000159,000024: # We check using values that are 000160,000025: # +-37777, +-1, and +-0, from both the accumulator and the 000161,000026: # L register. 000162,000027: 4041 24061 INCR ERRNUM 000163,000028: 000164,000029: # First, 37777 from accumulator. 000165,000030: 4042 24062 INCR ERRSUB # 1 000166,000031: 4043 37443 CA MAXP 000167,000032: 4044 10000 CCS A 000168,000033: 4045 14051 TCF CCSCHK1 000169,000034: 4046 14252 TCF ERROR4 000170,000035: 4047 14252 TCF ERROR4 000171,000036: 4050 14252 TCF ERROR4 000172,000037: 4051 24062 CCSCHK1 INCR ERRSUB # 2 000173,000038: 4052 54001 TS L 000174,000039: 4053 37444 CA MAXP-1 000175,000040: 4054 00006 EXTEND 000176,000041: 4055 60001 SU L 000177,000042: 4056 00006 EXTEND 000178,000043: 4057 14061 BZF CCSOK1 000179,000044: 4060 14252 TCF ERROR4 000180,000045: 4061 CCSOK1 000181,000046: # Next, 0 and 1 from accumulator. 000182,000047: 4061 24062 INCR ERRSUB # 3 000183,000048: 4062 30007 CA ZEROES 000184,000049: 4063 24000 INCR A 000185,000050: 4064 10000 CCS A 000186,000051: 4065 14071 TCF CCSCHK2 000187,000052: 4066 14252 TCF ERROR4 000188,000053: 4067 14252 TCF ERROR4 000189,000054: 4070 14252 TCF ERROR4 000190,000055: 4071 24062 CCSCHK2 INCR ERRSUB # 4 000191,000056: 4072 00006 EXTEND 000192,000057: 4073 14075 BZF CCSOK2 000193,000058: 4074 14252 TCF ERROR4 000194,000059: 4075 CCSOK2 000195,000060: # Next, -37777 from accumulator. 000196,000061: 4075 24062 INCR ERRSUB # 5 000197,000062: 4076 37443 CA MAXP 000198,000063: 4077 40000 COM 000199,000064: 4100 10000 CCS A 000200,000065: 4101 14252 TCF ERROR4 000201,000066: 4102 14252 TCF ERROR4 000202,000067: 4103 14105 TCF CCSCHK3 000203,000068: 4104 14252 TCF ERROR4 000204,000069: 4105 24062 CCSCHK3 INCR ERRSUB # 6 000205,000070: 4106 54001 TS L 000206,000071: 4107 37444 CA MAXP-1 000207,000072: 4110 00006 EXTEND 000208,000073: 4111 60001 SU L 000209,000074: 4112 00006 EXTEND 000210,000075: 4113 14115 BZF CCSOK3 000211,000076: 4114 14252 TCF ERROR4 000212,000077: 4115 CCSOK3 000213,000078: # Next, -0 and -1 from accumulator. 000214,000079: 4115 24062 INCR ERRSUB # 7 000215,000080: 4116 30007 CA ZEROES 000216,000081: 4117 24000 INCR A 000217,000082: 4120 40000 COM 000218,000083: 4121 54001 TS L 000219,000084: 4122 10001 CCS L 000220,000085: 4123 14252 TCF ERROR4 000221,000086: 4124 14252 TCF ERROR4 000222,000087: 4125 14127 TCF CCSCHK4 000223,000088: 4126 14252 TCF ERROR4 000224,000089: 4127 24062 CCSCHK4 INCR ERRSUB # 10 000225,000090: 4130 40000 COM 000226,000091: 4131 10000 CCS A 000227,000092: 4132 14252 TCF ERROR4 000228,000093: 4133 14252 TCF ERROR4 000229,000094: 4134 14252 TCF ERROR4 000230,000095: 4135 00006 EXTEND 000231,000096: 4136 14137 BZF CCSOK4 000232,000097: 4137 CCSOK4 000233,000098: # Next, 37777 from L. 000234,000099: 4137 24062 INCR ERRSUB # 11 000235,000100: 4140 37443 CA MAXP 000236,000101: 4141 54001 TS L 000237,000102: 4142 10001 CCS L 000238,000103: 4143 14147 TCF CCSCHK5 000239,000104: 4144 14252 TCF ERROR4 000240,000105: 4145 14252 TCF ERROR4 000241,000106: 4146 14252 TCF ERROR4 000242,000107: 4147 24062 CCSCHK5 INCR ERRSUB # 12 000243,000108: 4150 54063 TS TEMPI 000244,000109: 4151 37444 CA MAXP-1 000245,000110: 4152 00006 EXTEND 000246,000111: 4153 60063 SU TEMPI 000247,000112: 4154 00006 EXTEND 000248,000113: 4155 14157 BZF CCSOK5 000249,000114: 4156 14252 TCF ERROR4 000250,000115: 4157 24062 CCSOK5 INCR ERRSUB # 13 000251,000116: 4160 37443 CA MAXP 000252,000117: 4161 00006 EXTEND 000253,000118: 4162 60001 SU L 000254,000119: 4163 00006 EXTEND 000255,000120: 4164 14166 BZF CCSOK5A 000256,000121: 4165 14252 TCF ERROR4 000257,000122: 4166 CCSOK5A 000258,000123: # Next, 0 and 1 from L. 000259,000124: 4166 24062 INCR ERRSUB # 14 000260,000125: 4167 30007 CA ZEROES 000261,000126: 4170 24000 INCR A 000262,000127: 4171 54001 TS L 000263,000128: 4172 10001 CCS L 000264,000129: 4173 14177 TCF CCSCHK6 000265,000130: 4174 14252 TCF ERROR4 000266,000131: 4175 14252 TCF ERROR4 000267,000132: 4176 14252 TCF ERROR4 000268,000133: 4177 24062 CCSCHK6 INCR ERRSUB # 15 000269,000134: 4200 54001 TS L 000270,000135: 4201 10001 CCS L 000271,000136: 4202 14252 TCF ERROR4 000272,000137: 4203 14206 TCF CCSOK6 000273,000138: 4204 14252 TCF ERROR4 000274,000139: 4205 14252 TCF ERROR4 000275,000140: 4206 CCSOK6 000276,000141: # Next, -37777 from L. 000277,000142: 4206 24062 INCR ERRSUB # 16 000278,000143: 4207 37443 CA MAXP 000279,000144: 4210 40000 COM 000280,000145: 4211 54001 TS L 000281,000146: 4212 10001 CCS L 000282,000147: 4213 14252 TCF ERROR4 000283,000148: 4214 14252 TCF ERROR4 000284,000149: 4215 14217 TCF CCSCHK7 000285,000150: 4216 14252 TCF ERROR4 000286,000151: 4217 24062 CCSCHK7 INCR ERRSUB # 17 000287,000152: 4220 54063 TS TEMPI 000288,000153: 4221 37444 CA MAXP-1 000289,000154: 4222 00006 EXTEND 000290,000155: 4223 60063 SU TEMPI 000291,000156: 4224 00006 EXTEND 000292,000157: 4225 14227 BZF CCSOK7A 000293,000158: 4226 14252 TCF ERROR4 000294,000159: 4227 CCSOK7A 000295,000160: # Next, -0 and -1 from L. 000296,000161: 4227 24062 INCR ERRSUB # 20 000297,000162: 4230 30007 CA ZEROES 000298,000163: 4231 24000 INCR A 000299,000164: 4232 40000 COM 000300,000165: 4233 54001 TS L 000301,000166: 4234 10001 CCS L 000302,000167: 4235 14252 TCF ERROR4 000303,000168: 4236 14252 TCF ERROR4 000304,000169: 4237 14241 TCF CCSCHK8 000305,000170: 4240 14252 TCF ERROR4 000306,000171: 4241 24062 CCSCHK8 INCR ERRSUB # 21 000307,000172: 4242 40000 COM 000308,000173: 4243 54001 TS L 000309,000174: 4244 10001 CCS L 000310,000175: 4245 14252 TCF ERROR4 000311,000176: 4246 14252 TCF ERROR4 000312,000177: 4247 14252 TCF ERROR4 000313,000178: 4250 14251 TCF CCSOK8A 000314,000179: 4251 CCSOK8A 000315,000180: # All done. 000316,000181: 4251 14253 TCF DONE4 000317,000182: 4252 07240 ERROR4 TC ERRORDSP 000318,000183: 4253 30007 DONE4 CA ZEROES 000319,000184: 4254 54062 TS ERRSUB 000320,000185: 000321,000186: End of include-file ValidateCCS.agc. Parent file is Validation.agc