Source Code
004933,000001: # Copyright 2004 Ronald S. Burkey <info@sandroid.org>
004934,000002: #
004935,000003: # This file is part of yaAGC.
004936,000004:
004937,000005: # yaAGC is free software; you can redistribute it and/or modify
004938,000006: # it under the terms of the GNU General Public License as published by
004939,000007: # the Free Software Foundation; either version 2 of the License, or
004940,000008: # (at your option) any later version.
004941,000009:
004942,000010: # yaAGC is distributed in the hope that it will be useful,
004943,000011: # but WITHOUT ANY WARRANTY; without even the implied warranty of
004944,000012: # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
004945,000013: # GNU General Public License for more details.
004946,000014:
004947,000015: # You should have received a copy of the GNU General Public License
004948,000016: # along with yaAGC; if not, write to the Free Software
004949,000017: # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
004950,000018:
004951,000019: # Filename: SmallyO-UFLOW.agc
004952,000020: # Purpose: This is code written from the flowchart on p. 53 of
004953,000021: # E-2065, which is a document titled "Block II AGC
004954,000022: # Self-Check and Show-Banksum", by Edwin D. Smally.
004955,000023: # Mod history: 07/07/04 RSB. Began.
004956,000024: # 11/12/16 MAS. Added NEWJOB poking.
004957,000025:
004958,000026: # Similar code was apparently originally in Luminary and/or Colossus,
004959,000027: # but much of it was removed over the course of time to make more room.
004960,000028: # I don't know what the original code was like, but the flowcharts still
004961,000029: # exist, so I've rewritten the code from the flowcharts.
004962,000030:
004963,000031: # P. 53 of Smally
004964,000032:
004965,000033: 05,2210 24062 INCR ERRSUB
004966,000034:
004967,000035: 05,2211 37655 CA MAXN
004968,000036: 05,2212 54075 TS SKEEP5
004969,000037: 05,2213 37651 CA MAXP
004970,000038:
004971,000039: 05,2214 00004 OUFLOOP1 INHINT
004972,000040:
004973,000041: 05,2215 67651 AD MAXP
004974,000042: 05,2216 67635 AD ONE
004975,000043: 05,2217 54002 TS Q
004976,000044: 05,2220 12221 NOOP
004977,000045:
004978,000046: 05,2221 10002 OUFLOOP2 CCS Q
004979,000047: 05,2222 12226 TCF +4
004980,000048: 05,2223 12275 TCF OUFERROR
004981,000049: 05,2224 12244 TCF OUFNZERO
004982,000050: 05,2225 12275 TCF OUFERROR
004983,000051:
004984,000052: 05,2226 54074 TS SKEEP4
004985,000053: 05,2227 12262 TCF OUFDONE
004986,000054:
004987,000055: 05,2230 30074 CA SKEEP4
004988,000056: 05,2231 60075 AD SKEEP5
004989,000057: 05,2232 67635 AD ONE
004990,000058: 05,2233 00006 EXTEND
004991,000059: 05,2234 12236 BZF +2
004992,000060: 05,2235 12275 TCF OUFERROR
004993,000061:
004994,000062: 05,2236 30075 CA SKEEP5
004995,000063: 05,2237 67655 AD MAXN
004996,000064: 05,2240 67631 AD NEGONE
004997,000065: 05,2241 54002 TS Q
004998,000066: 05,2242 12243 NOOP
004999,000067: 05,2243 12221 TCF OUFLOOP2
005000,000068:
005001,000069: 05,2244 54073 OUFNZERO TS SKEEP3
005002,000070: 05,2245 12275 TCF OUFERROR
005003,000071:
005004,000072: 05,2246 30073 CA SKEEP3
005005,000073: 05,2247 60075 AD SKEEP5
005006,000074: 05,2250 67635 AD ONE
005007,000075: 05,2251 00006 EXTEND
005008,000076: 05,2252 12254 BZF +2
005009,000077: 05,2253 12275 TCF OUFERROR
005010,000078:
005011,000079: 05,2254 00003 RELINT
005012,000080: 05,2255 40067 CS NEWJOB
005013,000081:
005014,000082: 05,2256 30074 CA SKEEP4
005015,000083: 05,2257 00006 EXTEND
005016,000084: 05,2260 26075 DIM SKEEP5
005017,000085: 05,2261 12214 TCF OUFLOOP1
005018,000086:
005019,000087: 05,2262 10075 OUFDONE CCS SKEEP5 # Smally says that SKEEP5 is +1
005020,000088: 05,2263 12275 TCF OUFERROR # here, but that has to be wrong
005021,000089: 05,2264 12275 TCF OUFERROR # since SKEEP5 is always negative.
005022,000090: 05,2265 12275 TCF OUFERROR # Must be -1.
005023,000091:
005024,000092: 05,2266 30074 CA SKEEP4
005025,000093: 05,2267 67655 AD MAXN
005026,000094: 05,2270 00006 EXTEND
005027,000095: 05,2271 12273 BZF +2
005028,000096: 05,2272 12275 TCF OUFERROR
005029,000097:
005030,000098: 05,2273 00003 RELINT
005031,000099:
005032,000100: 05,2274 12276 TCF +2
005033,000101: 05,2275 07437 OUFERROR TC ERRORDSP
005034,000102:
End of include-file SmallyO-UFLOW.agc. Parent file is ValidateSmally.agc