Source Code
005125,000001: # Copyright 2004 Ronald S. Burkey <info@sandroid.org>
005126,000002: #
005127,000003: # This file is part of yaAGC.
005128,000004:
005129,000005: # yaAGC is free software; you can redistribute it and/or modify
005130,000006: # it under the terms of the GNU General Public License as published by
005131,000007: # the Free Software Foundation; either version 2 of the License, or
005132,000008: # (at your option) any later version.
005133,000009:
005134,000010: # yaAGC is distributed in the hope that it will be useful,
005135,000011: # but WITHOUT ANY WARRANTY; without even the implied warranty of
005136,000012: # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
005137,000013: # GNU General Public License for more details.
005138,000014:
005139,000015: # You should have received a copy of the GNU General Public License
005140,000016: # along with yaAGC; if not, write to the Free Software
005141,000017: # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
005142,000018:
005143,000019: # Filename: SmallyMPNMBRS.agc
005144,000020: # Purpose: This is code written from the flowchart on p. 58-61 of
005145,000021: # E-2065, which is a document titled "Block II AGC
005146,000022: # Self-Check and Show-Banksum", by Edwin D. Smally.
005147,000023: # Mod history: 07/07/04 RSB. Began.
005148,000024: # 11/12/16 MAS. Added NEWJOB poking.
005149,000025:
005150,000026: # Similar code was apparently originally in Luminary and/or Colossus,
005151,000027: # but much of it was removed over the course of time to make more room.
005152,000028: # I don't know what the original code was like, but the flowcharts still
005153,000029: # exist, so I've rewritten the code from the flowcharts.
005154,000030:
005155,000031: # P. 58 of Smally.
005156,000032: 07,2003 24062 INCR ERRSUB
005157,000033: 07,2004 37651 CA MAXP # 37777
005158,000034: 07,2005 54072 MPLOOP1 TS SKEEP2
005159,000035: 07,2006 37651 CA MAXP # 37777
005160,000036: 07,2007 00006 EXTEND
005161,000037: 07,2010 70072 MP SKEEP2
005162,000038: 07,2011 60001 AD L
005163,000039: 07,2012 67655 AD MAXN # 40000
005164,000040: 07,2013 10000 CCS A
005165,000041: 07,2014 12015 NOOP
005166,000042: 07,2015 12016 NOOP
005167,000043: 07,2016 12124 TCF MPERROR
005168,000044: 07,2017 40067 CS NEWJOB
005169,000045: 07,2020 30072 CA SKEEP2
005170,000046: 07,2021 67631 AD NEGONE
005171,000047: 07,2022 00006 EXTEND
005172,000048: 07,2023 12025 BZF +2
005173,000049: 07,2024 02005 TC MPLOOP1
005174,000050:
005175,000051: 07,2025 24062 INCR ERRSUB
005176,000052: # P. 59 of Smally.
005177,000053: 07,2026 37651 CA MAXP # 37777
005178,000054: 07,2027 54072 MPLOOP2 TS SKEEP2
005179,000055: 07,2030 37631 CA NEGONE # 37777
005180,000056: 07,2031 00006 EXTEND
005181,000057: 07,2032 70072 MP SKEEP2
005182,000058: 07,2033 10000 CCS A
005183,000059: 07,2034 12035 NOOP
005184,000060: 07,2035 12036 NOOP
005185,000061: 07,2036 12124 TCF MPERROR
005186,000062: 07,2037 30001 CA L
005187,000063: 07,2040 60072 AD SKEEP2
005188,000064: 07,2041 10000 CCS A
005189,000065: 07,2042 12043 NOOP
005190,000066: 07,2043 12044 NOOP
005191,000067: 07,2044 12124 TCF MPERROR
005192,000068: 07,2045 40067 CS NEWJOB
005193,000069: 07,2046 30072 CA SKEEP2
005194,000070: 07,2047 67631 AD NEGONE
005195,000071: 07,2050 00006 EXTEND
005196,000072: 07,2051 12053 BZF +2
005197,000073: 07,2052 02027 TC MPLOOP2
005198,000074:
005199,000075: 07,2053 24062 INCR ERRSUB
005200,000076: # P. 60 of Smally
005201,000077: 07,2054 37651 CA MAXP # 37777
005202,000078: 07,2055 54071 MPLOOP3 TS SKEEP1
005203,000079: 07,2056 30071 CA SKEEP1
005204,000080: 07,2057 00006 EXTEND
005205,000081: 07,2060 77651 MP MAXP # 37777
005206,000082: 07,2061 60001 AD L
005207,000083: 07,2062 67655 AD MAXN # 40000
005208,000084: 07,2063 10000 CCS A
005209,000085: 07,2064 12065 NOOP
005210,000086: 07,2065 12066 NOOP
005211,000087: 07,2066 12124 TCF MPERROR
005212,000088: 07,2067 40067 CS NEWJOB
005213,000089: 07,2070 30071 CA SKEEP1
005214,000090: 07,2071 67631 AD NEGONE
005215,000091: 07,2072 00006 EXTEND
005216,000092: 07,2073 12075 BZF +2
005217,000093: 07,2074 02055 TC MPLOOP3
005218,000094:
005219,000095: 07,2075 24062 INCR ERRSUB
005220,000096: # P. 61 of Smally
005221,000097: 07,2076 37651 CA MAXP # 37777
005222,000098: 07,2077 54071 MPLOOP4 TS SKEEP1
005223,000099: 07,2100 30071 CA SKEEP1
005224,000100: 07,2101 00006 EXTEND
005225,000101: 07,2102 77631 MP NEGONE
005226,000102: 07,2103 10000 CCS A
005227,000103: 07,2104 12105 NOOP
005228,000104: 07,2105 12106 NOOP
005229,000105: 07,2106 12124 TCF MPERROR
005230,000106: 07,2107 30001 CA L
005231,000107: 07,2110 60071 AD SKEEP1
005232,000108: 07,2111 10000 CCS A
005233,000109: 07,2112 12113 NOOP
005234,000110: 07,2113 12114 NOOP
005235,000111: 07,2114 12124 TCF MPERROR
005236,000112: 07,2115 40067 CS NEWJOB
005237,000113: 07,2116 30071 CA SKEEP1
005238,000114: 07,2117 67631 AD NEGONE
005239,000115: 07,2120 00006 EXTEND
005240,000116: 07,2121 12123 BZF +2
005241,000117: 07,2122 02077 TC MPLOOP4
005242,000118:
005243,000119: # All done.
005244,000120: 07,2123 12125 TCF MPDONE
005245,000121: 07,2124 07437 MPERROR TC ERRORDSP
005246,000122: 07,2125 MPDONE
005247,000123:
End of include-file SmallyMPNMBRS.agc. Parent file is ValidateSmally.agc