155 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			155 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| DEPTH = 256;	% Memory depth and width are required	%
 | |
| WIDTH = 8;		% Enter a decimal number	%
 | |
| 
 | |
| ADDRESS_RADIX = HEX;	% Address and value radixes are optional	%
 | |
| DATA_RADIX = BIN;		% Enter BIN, DEC, HEX, or OCT; unless 	%
 | |
| 						% otherwise specified, radixes = HEX	%
 | |
| 
 | |
| -- Specify values for addresses, which can be single address or range
 | |
| 
 | |
| CONTENT
 | |
| BEGIN
 | |
| 	[0..7F]	: 00000000;
 | |
| 	0	:	00000000 00000000
 | |
| 			00000000 00000000
 | |
| 			00000000 00000000
 | |
| 			00000000 11111111
 | |
| 			00000000 00000000
 | |
| 			00000000 00000000
 | |
| 			00000000 00000000
 | |
| 			00000000 00000000
 | |
| 
 | |
| 			11111111 11111111
 | |
| 			11111111 11111111
 | |
| 			11111111 11111111
 | |
| 			11111111 11111111
 | |
| 			11111111 11111111
 | |
| 			11111111 11111111
 | |
| 			11111111 00000001
 | |
| 			00000000 11111111
 | |
| 	;
 | |
| 	1E	:	00000000;
 | |
| 	1F	:	11111111;
 | |
| 
 | |
| 	30	:	00000000
 | |
| 			00000010
 | |
| 			00000011
 | |
| 			00000100
 | |
| 			00000110
 | |
| 			00001000
 | |
| 			00001011
 | |
| 			00010000
 | |
| 			00010110
 | |
| 			00100000
 | |
| 			00101101
 | |
| 			01000000
 | |
| 			01011010
 | |
| 			10000000
 | |
| 			10110100
 | |
| 			11111111;
 | |
| 
 | |
| 	[80..FF]: 00000000;
 | |
| 
 | |
| %
 | |
| 	000 - set CX, load & sub 1
 | |
| 	001	- load
 | |
| 	010	- save, if NZ,reset CX
 | |
| 	011	- bit_out
 | |
| 	100	- load & sub 1
 | |
| 	101	- load & sub C
 | |
| 	110	- if CX, save
 | |
| 	111	- read states /RESET, AY_F_RES
 | |
| %
 | |
| 
 | |
| 	80	:
 | |
| 			00010000  -- set C,CX load reg10 & sub C
 | |
| 			01010000  -- save reg10 & reset CX if NZ
 | |
| 			10110001  -- load reg11 & sub C
 | |
| 			01010001  -- save reg11 & reset CX if NZ
 | |
| 
 | |
| 			00100000  -- set C load reg00 & sub C
 | |
| 			11010000  -- save reg10 if CX
 | |
| 			00100001  -- load reg01 & sub C
 | |
| 			11010001  -- save reg11 if CX
 | |
| 
 | |
| 			00101000  -- load reg08
 | |
| 			01100001  -- set AY_OUT1
 | |
| 
 | |
| 
 | |
| 			00010010  -- set C,CX load reg12 & sub C
 | |
| 			01010010  -- save reg12 & reset CX if NZ
 | |
| 			10110011  -- load reg13 & sub C
 | |
| 			01010011  -- save reg13 & reset CX if NZ
 | |
| 
 | |
| 			00100010  -- set C load reg02 & sub C
 | |
| 			11010010  -- save reg12 if CX
 | |
| 			00100011  -- load reg03 & reset CX if NZ
 | |
| 			11010011  -- save reg13 if CX
 | |
| 
 | |
| 			00101001  -- load reg09
 | |
| 			01100010  -- set AY_OUT2
 | |
| 
 | |
| 
 | |
| 			00010100  -- set C,CX load reg14 & sub C
 | |
| 			01010100  -- save reg14 & reset CX if NZ
 | |
| 			10110101  -- load reg15 & sub C
 | |
| 			01010101  -- save reg15 & reset CX if NZ
 | |
| 
 | |
| 			00100100  -- set C load reg04 & sub C
 | |
| 			11010100  -- save reg14 if CX
 | |
| 			00100101  -- load reg05 & reset CX if NZ
 | |
| 			11010101  -- save reg15 if CX
 | |
| 
 | |
| 			00101010  -- load reg0A
 | |
| 			01100011  -- set AY_OUT3
 | |
| 
 | |
| 
 | |
| 			00010111  -- set C,CX load reg17 & dec 1
 | |
| 			01010111  -- save reg17 & reset CX if NZ
 | |
| 			00100110  -- load reg06 dec 1  		***********
 | |
| 			11010111  -- save reg17 if CX
 | |
| 
 | |
| 			01100100  -- set AY_SH
 | |
| 			00000000  -- NOP
 | |
| 
 | |
| 			00011000  -- set C,CX load reg18 & sub C
 | |
| 			01011000  -- save reg18 & reset CX if NZ
 | |
| 			10111001  -- load reg19 & sub C
 | |
| 			01011001  -- save reg19 & reset CX if NZ
 | |
| 
 | |
| 			00101011  -- load reg0B & sub 1
 | |
| 			11011000  -- save reg18 if CX
 | |
| 			00101100  -- load reg0C & sub C
 | |
| 			11011001  -- save reg19 if CX
 | |
| 
 | |
| 			01100101  -- set FORM_CLK
 | |
| 
 | |
| 			11100000  -- set CX = AY_F_RES
 | |
| 
 | |
| --			00101011  -- load reg0B & sub 1
 | |
| --			11011000  -- save reg18 if CX
 | |
| --			00101100  -- load reg0C & sub C
 | |
| --			11011001  -- save reg19 if CX
 | |
| 
 | |
| 			11100001  -- set CX = /RESET
 | |
| 
 | |
| 			00111111  -- load reg1F - FF		***********
 | |
| 			11000111  -- save reg07 if CX
 | |
| 			00111110  -- load reg1E - 00		***********
 | |
| 
 | |
| 			11001101  -- save reg0D if CX
 | |
| 			11001000  -- save reg08 if CX
 | |
| 			11001001  -- save reg09 if CX
 | |
| 			11001010  -- save reg0a if CX
 | |
| 
 | |
| 			00100111  -- load reg07				***********
 | |
| 			01100110  -- set keys_bits
 | |
| 
 | |
| 			00101101  -- load reg0D             ***********
 | |
| 			01100111  -- set keys_bits			SET-FORM-bits
 | |
| 
 | |
| --			01100000  -- set AY_OUT_ALL
 | |
| 
 | |
| 		;
 | |
| END ;
 | 
