home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1994 March / Source_Code_CD-ROM_Walnut_Creek_March_1994.iso / unix_c / languags / asembler / zmac.tar < prev   
Tape Archive  |  1989-03-03  |  120.0 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text

This file was processed as: Tape Archive (archive/tar).

You can browse this item here: zmac.tar

ConfidenceProgramDetectionMatch TypeSupport
100% dexvert Tape Archive (archive/tar) magic Supported
100% file tar archive default
99% file tar archive (V7), file zmac/, mode 755 , uid 243 , gid 12 , size 0 , seconds 4403576660 default
98% file data default
100% TrID Sybase iAnywhere database files default (weak)
100% lsar Tar default
100% gt2 TAR Archiv gefunden (Auflistung ist deaktiviert) default
100% disktype Pre-POSIX tar archive default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 7a 6d 61 63 2f 00 00 00 | 00 00 00 00 00 00 00 00 |zmac/...|........|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000050| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000060| 00 00 00 00 20 20 20 37 | 35 35 20 00 20 20 20 32 |.... 7|55 . 2|
|00000070| 34 33 20 00 20 20 20 20 | 31 32 20 00 20 20 20 20 |43 . |12 . |
|00000080| 20 20 20 20 20 20 30 20 | 20 34 34 30 33 35 37 36 | 0 | 4403576|
|00000090| 36 36 30 20 20 20 34 37 | 36 30 00 20 00 00 00 00 |660 47|60. ....|
|000000a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000100| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000110| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000120| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000130| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000140| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000150| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000160| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000170| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000180| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000190| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000200| 7a 6d 61 63 2f 4d 61 6b | 65 66 69 6c 65 00 00 00 |zmac/Mak|efile...|
|00000210| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000220| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000230| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000240| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000250| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000260| 00 00 00 00 20 20 20 37 | 35 35 20 00 20 20 20 32 |.... 7|55 . 2|
|00000270| 34 33 20 00 20 20 20 20 | 31 32 20 00 20 20 20 20 |43 . |12 . |
|00000280| 20 20 20 31 32 30 32 20 | 20 34 34 30 33 35 37 36 | 1202 | 4403576|
|00000290| 36 30 34 20 20 20 36 35 | 30 31 00 20 00 00 00 00 |604 65|01. ....|
|000002a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000300| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000310| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000320| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000330| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000340| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000350| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000360| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000370| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000380| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000390| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000400| 23 20 4d 61 6b 65 66 69 | 6c 65 20 74 6f 20 6d 61 |# Makefi|le to ma|
|00000410| 6b 65 20 7a 38 30 20 6d | 61 63 72 6f 20 61 73 73 |ke z80 m|acro ass|
|00000420| 65 6d 62 6c 65 72 2e 0a | 43 46 4c 41 47 53 20 3d |embler..|CFLAGS =|
|00000430| 0a 0a 61 6c 6c 3a 09 7a | 6d 61 63 20 7a 64 69 73 |..all:.z|mac zdis|
|00000440| 0a 0a 7a 6d 61 63 3a 09 | 79 2e 74 61 62 2e 6f 20 |..zmac:.|y.tab.o |
|00000450| 6d 69 6f 2e 6f 0a 09 63 | 63 20 24 28 43 46 4c 41 |mio.o..c|c $(CFLA|
|00000460| 47 53 29 20 2d 6f 20 7a | 6d 61 63 20 79 2e 74 61 |GS) -o z|mac y.ta|
|00000470| 62 2e 6f 20 6d 69 6f 2e | 6f 0a 0a 79 2e 74 61 62 |b.o mio.|o..y.tab|
|00000480| 2e 63 3a 20 7a 6d 61 63 | 2e 79 0a 09 79 61 63 63 |.c: zmac|.y..yacc|
|00000490| 20 7a 6d 61 63 2e 79 0a | 0a 7a 64 69 73 3a 09 7a | zmac.y.|.zdis:.z|
|000004a0| 64 69 73 2e 6f 0a 09 63 | 63 20 24 28 43 46 4c 41 |dis.o..c|c $(CFLA|
|000004b0| 47 53 29 20 2d 6f 20 7a | 64 69 73 20 7a 64 69 73 |GS) -o z|dis zdis|
|000004c0| 2e 6f 0a 0a 69 6e 73 74 | 61 6c 6c 3a 0a 09 69 6e |.o..inst|all:..in|
|000004d0| 73 74 61 6c 6c 20 2d 73 | 20 7a 6d 61 63 20 2f 75 |stall -s| zmac /u|
|000004e0| 73 72 2f 6c 6f 63 61 6c | 2f 62 69 6e 0a 09 69 6e |sr/local|/bin..in|
|000004f0| 73 74 61 6c 6c 20 2d 73 | 20 7a 64 69 73 20 2f 75 |stall -s| zdis /u|
|00000500| 73 72 2f 6c 6f 63 61 6c | 2f 62 69 6e 0a 0a 69 6e |sr/local|/bin..in|
|00000510| 73 74 61 6c 6c 5f 6d 61 | 6e 3a 0a 09 63 70 20 7a |stall_ma|n:..cp z|
|00000520| 6d 61 63 2e 31 20 2f 75 | 73 72 2f 6d 61 6e 2f 6d |mac.1 /u|sr/man/m|
|00000530| 61 6e 6c 2f 7a 6d 61 63 | 2e 6c 0a 09 63 70 20 7a |anl/zmac|.l..cp z|
|00000540| 64 69 73 2e 31 20 2f 75 | 73 72 2f 6d 61 6e 2f 6d |dis.1 /u|sr/man/m|
|00000550| 61 6e 6c 2f 7a 64 69 73 | 2e 6c 0a 0a 63 6c 65 61 |anl/zdis|.l..clea|
|00000560| 6e 3a 0a 09 72 6d 20 2d | 66 20 7a 64 69 73 2e 6f |n:..rm -|f zdis.o|
|00000570| 20 7a 6d 61 63 2e 6f 20 | 6d 69 6f 2e 6f 20 79 2e | zmac.o |mio.o y.|
|00000580| 74 61 62 2e 63 20 79 2e | 74 61 62 2e 6f 20 61 2e |tab.c y.|tab.o a.|
|00000590| 6f 75 74 20 63 6f 72 65 | 0a 0a 73 68 61 72 3a 20 |out core|..shar: |
|000005a0| 7a 6d 61 63 2e 73 68 61 | 72 2e 31 20 7a 6d 61 63 |zmac.sha|r.1 zmac|
|000005b0| 2e 73 68 61 72 2e 32 0a | 0a 7a 6d 61 63 2e 73 68 |.shar.2.|.zmac.sh|
|000005c0| 61 72 2e 31 3a 20 4d 61 | 6b 65 66 69 6c 65 20 7a |ar.1: Ma|kefile z|
|000005d0| 6d 61 63 2e 79 20 6d 69 | 6f 2e 63 20 7a 6d 61 63 |mac.y mi|o.c zmac|
|000005e0| 2e 31 20 7a 64 69 73 2e | 31 0a 09 73 68 61 72 20 |.1 zdis.|1..shar |
|000005f0| 2d 76 63 20 4d 61 6b 65 | 66 69 6c 65 20 7a 6d 61 |-vc Make|file zma|
|00000600| 63 2e 79 20 6d 69 6f 2e | 63 20 7a 6d 61 63 2e 31 |c.y mio.|c zmac.1|
|00000610| 20 7a 64 69 73 2e 31 20 | 3e 20 7a 6d 61 63 2e 73 | zdis.1 |> zmac.s|
|00000620| 68 61 72 2e 31 0a 0a 7a | 6d 61 63 2e 73 68 61 72 |har.1..z|mac.shar|
|00000630| 2e 32 3a 20 7a 64 69 73 | 2e 63 20 73 65 72 69 61 |.2: zdis|.c seria|
|00000640| 6c 2e 7a 20 73 65 72 69 | 61 6c 2e 68 65 78 0a 09 |l.z seri|al.hex..|
|00000650| 73 68 61 72 20 2d 76 63 | 20 7a 64 69 73 2e 63 20 |shar -vc| zdis.c |
|00000660| 73 65 72 69 61 6c 2e 7a | 20 73 65 72 69 61 6c 2e |serial.z| serial.|
|00000670| 68 65 78 20 3e 20 7a 6d | 61 63 2e 73 68 61 72 2e |hex > zm|ac.shar.|
|00000680| 32 0a 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |2.......|........|
|00000690| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000006a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000006b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000006c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000006d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000006e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000006f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000700| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000710| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000720| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000730| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000740| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000750| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000760| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000770| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000780| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000790| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000007a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000007b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000007c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000007d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000007e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000007f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000800| 7a 6d 61 63 2f 7a 6d 61 | 63 2e 79 00 00 00 00 00 |zmac/zma|c.y.....|
|00000810| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000820| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000830| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000840| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000850| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000860| 00 00 00 00 20 20 20 37 | 35 35 20 00 20 20 20 32 |.... 7|55 . 2|
|00000870| 34 33 20 00 20 20 20 20 | 31 32 20 00 20 20 20 20 |43 . |12 . |
|00000880| 20 31 34 32 31 36 37 20 | 20 34 34 30 33 35 37 36 | 142167 | 4403576|
|00000890| 36 32 33 20 20 20 36 32 | 34 36 00 20 00 00 00 00 |623 62|46. ....|
|000008a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000008b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000008c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000008d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000008e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000008f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000900| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000910| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000920| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000930| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000940| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000950| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000960| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000970| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000980| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000990| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000009a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000009b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000009c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000009d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000009e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000009f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000a00| 25 7b 0a 2f 2a 0a 20 2a | 20 20 7a 6d 61 63 20 2d |%{./*. *| zmac -|
|00000a10| 2d 20 6d 61 63 72 6f 20 | 63 72 6f 73 73 2d 61 73 |- macro |cross-as|
|00000a20| 73 65 6d 62 6c 65 72 20 | 66 6f 72 20 74 68 65 20 |sembler |for the |
|00000a30| 5a 69 6c 6f 67 20 5a 38 | 30 20 6d 69 63 72 6f 70 |Zilog Z8|0 microp|
|00000a40| 72 6f 63 65 73 73 6f 72 | 0a 20 2a 0a 20 2a 20 20 |rocessor|. *. * |
|00000a50| 42 72 75 63 65 20 4e 6f | 72 73 6b 6f 67 09 34 2f |Bruce No|rskog.4/|
|00000a60| 37 38 0a 20 2a 0a 20 2a | 20 20 4c 61 73 74 20 6d |78. *. *| Last m|
|00000a70| 6f 64 69 66 69 63 61 74 | 69 6f 6e 20 20 31 2d 31 |odificat|ion 1-1|
|00000a80| 38 2d 38 37 20 62 79 20 | 63 64 6b 0a 20 2a 20 20 |8-87 by |cdk. * |
|00000a90| 54 68 69 73 20 61 73 73 | 65 6d 62 6c 65 72 20 69 |This ass|embler i|
|00000aa0| 73 20 6d 6f 64 65 6c 65 | 64 20 61 66 74 65 72 20 |s modele|d after |
|00000ab0| 74 68 65 20 49 6e 74 65 | 6c 20 38 30 38 30 20 6d |the Inte|l 8080 m|
|00000ac0| 61 63 72 6f 20 63 72 6f | 73 73 2d 61 73 73 65 6d |acro cro|ss-assem|
|00000ad0| 62 6c 65 72 0a 20 2a 20 | 20 66 6f 72 20 74 68 65 |bler. * | for the|
|00000ae0| 20 49 6e 74 65 6c 20 38 | 30 38 30 20 62 79 20 4b | Intel 8|080 by K|
|00000af0| 65 6e 20 42 6f 72 67 65 | 6e 64 61 6c 65 2e 20 20 |en Borge|ndale. |
|00000b00| 54 68 65 20 6d 61 6a 6f | 72 20 66 65 61 74 75 72 |The majo|r featur|
|00000b10| 65 73 20 61 72 65 3a 0a | 20 2a 09 31 2e 20 20 46 |es are:.| *.1. F|
|00000b20| 75 6c 6c 20 6d 61 63 72 | 6f 20 63 61 70 61 62 69 |ull macr|o capabi|
|00000b30| 6c 69 74 69 65 73 0a 20 | 2a 09 32 2e 20 20 43 6f |lities. |*.2. Co|
|00000b40| 6e 64 69 74 69 6f 6e 61 | 6c 20 61 73 73 65 6d 62 |nditiona|l assemb|
|00000b50| 6c 79 0a 20 2a 09 33 2e | 20 20 41 20 76 65 72 79 |ly. *.3.| A very|
|00000b60| 20 66 6c 65 78 69 62 6c | 65 20 73 65 74 20 6f 66 | flexibl|e set of|
|00000b70| 20 6c 69 73 74 69 6e 67 | 20 6f 70 74 69 6f 6e 73 | listing| options|
|00000b80| 20 61 6e 64 20 70 73 65 | 75 64 6f 2d 6f 70 73 0a | and pse|udo-ops.|
|00000b90| 20 2a 09 34 2e 20 20 53 | 79 6d 62 6f 6c 20 74 61 | *.4. S|ymbol ta|
|00000ba0| 62 6c 65 20 6f 75 74 70 | 75 74 0a 20 2a 09 35 2e |ble outp|ut. *.5.|
|00000bb0| 20 20 45 72 72 6f 72 20 | 72 65 70 6f 72 74 0a 20 | Error |report. |
|00000bc0| 2a 09 36 2e 20 20 45 6c | 69 6d 69 6e 61 74 69 6f |*.6. El|iminatio|
|00000bd0| 6e 20 6f 66 20 73 65 71 | 75 65 6e 74 69 61 6c 20 |n of seq|uential |
|00000be0| 73 65 61 72 63 68 69 6e | 67 0a 20 2a 09 37 2e 20 |searchin|g. *.7. |
|00000bf0| 20 43 6f 6d 6d 65 6e 74 | 69 6e 67 20 6f 66 20 73 | Comment|ing of s|
|00000c00| 6f 75 72 63 65 0a 20 2a | 09 38 2e 20 20 46 61 63 |ource. *|.8. Fac|
|00000c10| 69 6c 69 74 69 65 73 20 | 66 6f 72 20 73 79 73 74 |ilities |for syst|
|00000c20| 65 6d 20 64 65 66 69 6e | 69 74 6f 6e 20 66 69 6c |em defin|iton fil|
|00000c30| 65 73 0a 20 2a 0a 20 2a | 20 52 65 76 69 73 69 6f |es. *. *| Revisio|
|00000c40| 6e 20 48 69 73 74 6f 72 | 79 3a 0a 20 2a 0a 20 2a |n Histor|y:. *. *|
|00000c50| 20 6a 72 70 09 33 2d 38 | 2d 38 32 09 43 6f 6e 76 | jrp.3-8|-82.Conv|
|00000c60| 65 72 74 65 64 20 74 6f | 20 72 75 6e 20 6f 6e 20 |erted to| run on |
|00000c70| 56 61 78 2c 20 75 70 64 | 61 74 65 64 20 73 79 6e |Vax, upd|ated syn|
|00000c80| 74 61 78 20 74 6f 20 63 | 6f 6e 66 6f 72 6d 20 62 |tax to c|onform b|
|00000c90| 65 74 74 65 72 0a 20 2a | 09 09 74 6f 20 74 68 65 |etter. *|..to the|
|00000ca0| 20 5a 69 6c 6f 67 20 73 | 74 61 6e 64 61 72 64 2e | Zilog s|tandard.|
|00000cb0| 0a 20 2a 0a 20 2a 20 6a | 72 70 09 33 2d 31 35 2d |. *. * j|rp.3-15-|
|00000cc0| 38 32 09 41 64 64 65 64 | 20 75 6e 64 65 72 73 63 |82.Added| undersc|
|00000cd0| 6f 72 65 20 61 73 20 61 | 20 63 68 61 72 61 63 74 |ore as a| charact|
|00000ce0| 65 72 20 74 79 70 65 20 | 69 6e 20 74 68 65 20 6c |er type |in the l|
|00000cf0| 65 78 20 74 61 62 6c 65 | 0a 20 2a 09 09 27 6e 75 |ex table|. *..'nu|
|00000d00| 6d 70 61 72 74 27 20 28 | 30 78 35 46 29 2e 0a 20 |mpart' (|0x5F).. |
|00000d10| 2a 0a 20 2a 09 09 43 68 | 61 6e 67 65 64 20 6d 61 |*. *..Ch|anged ma|
|00000d20| 78 69 6d 75 6d 20 6e 75 | 6d 62 65 72 20 6f 66 20 |ximum nu|mber of |
|00000d30| 63 68 61 72 61 63 74 65 | 72 73 20 69 6e 20 61 20 |characte|rs in a |
|00000d40| 6c 61 62 65 6c 20 74 6f | 20 31 35 0a 20 2a 09 09 |label to| 15. *..|
|00000d50| 66 72 6f 6d 20 37 2e 20 | 4e 6f 74 65 20 74 68 61 |from 7. |Note tha|
|00000d60| 74 20 27 70 75 74 73 79 | 6d 74 61 62 27 20 75 73 |t 'putsy|mtab' us|
|00000d70| 65 73 20 74 68 69 73 20 | 76 61 6c 75 65 20 69 6e |es this |value in|
|00000d80| 73 69 64 65 0a 20 2a 09 | 09 6f 66 20 61 20 71 75 |side. *.|.of a qu|
|00000d90| 6f 74 65 64 20 73 74 72 | 69 6e 67 2c 20 73 6f 20 |oted str|ing, so |
|00000da0| 77 65 20 75 73 65 20 31 | 35 2e 0a 20 2a 0a 20 2a |we use 1|5.. *. *|
|00000db0| 20 6a 72 70 09 32 2d 31 | 35 2d 38 33 09 46 69 78 | jrp.2-1|5-83.Fix|
|00000dc0| 65 64 20 27 67 65 74 6c | 6f 63 61 6c 27 20 74 6f |ed 'getl|ocal' to|
|00000dd0| 20 72 65 74 75 72 6e 20 | 62 65 74 74 65 72 20 6c | return |better l|
|00000de0| 6f 63 61 6c 20 6c 61 62 | 65 6c 73 2e 20 49 74 20 |ocal lab|els. It |
|00000df0| 75 73 65 64 0a 20 2a 09 | 09 74 6f 20 63 72 61 73 |used. *.|.to cras|
|00000e00| 68 20 61 66 74 65 72 20 | 36 20 69 6e 76 6f 63 61 |h after |6 invoca|
|00000e10| 74 69 6f 6e 73 2e 0a 20 | 2a 0a 20 2a 20 6a 72 70 |tions.. |*. * jrp|
|00000e20| 09 36 2d 37 2d 38 33 09 | 46 69 78 65 64 20 62 75 |.6-7-83.|Fixed bu|
|00000e30| 67 20 69 6e 20 74 68 65 | 20 41 44 44 20 49 58 2c |g in the| ADD IX,|
|00000e40| 2e 2e 2e 20 69 6e 73 74 | 72 75 63 74 69 6f 6e 2e |... inst|ruction.|
|00000e50| 0a 20 2a 0a 20 2a 20 6a | 72 70 09 35 2d 31 31 2d |. *. * j|rp.5-11-|
|00000e60| 38 34 09 41 64 64 65 64 | 20 63 6f 64 65 20 74 6f |84.Added| code to|
|00000e70| 20 70 72 69 6e 74 20 75 | 6e 75 73 65 64 20 6c 61 | print u|nused la|
|00000e80| 62 65 6c 73 20 6f 75 74 | 20 77 69 74 68 20 74 68 |bels out| with th|
|00000e90| 65 20 73 79 6d 62 6f 6c | 20 74 61 62 6c 65 0a 20 |e symbol| table. |
|00000ea0| 2a 09 09 41 6c 73 6f 20 | 73 70 65 64 20 75 70 20 |*..Also |sped up |
|00000eb0| 74 68 65 20 6d 61 63 72 | 6f 20 70 72 6f 63 65 73 |the macr|o proces|
|00000ec0| 73 6f 72 20 62 79 20 75 | 73 69 6e 67 20 73 74 64 |sor by u|sing std|
|00000ed0| 69 6f 2e 0a 20 2a 0a 20 | 2a 20 6a 72 70 20 35 2d |io.. *. |* jrp 5-|
|00000ee0| 32 32 2d 38 34 09 41 64 | 64 65 64 20 69 6e 63 6c |22-84.Ad|ded incl|
|00000ef0| 75 64 65 20 66 69 6c 65 | 73 20 61 6c 61 20 6f 72 |ude file|s ala or|
|00000f00| 6d 61 63 0a 20 2a 0a 20 | 2a 20 6a 72 70 20 38 2d |mac. *. |* jrp 8-|
|00000f10| 32 37 2d 38 34 09 41 64 | 64 65 64 20 50 48 41 53 |27-84.Ad|ded PHAS|
|00000f20| 45 2f 44 45 50 48 41 53 | 45 20 63 6f 6d 6d 61 6e |E/DEPHAS|E comman|
|00000f30| 64 73 0a 20 2a 0a 20 2a | 20 63 64 6b 20 39 2d 32 |ds. *. *| cdk 9-2|
|00000f40| 30 2d 38 36 09 43 6f 6e | 76 65 72 74 65 64 20 74 |0-86.Con|verted t|
|00000f50| 6f 20 72 75 6e 20 6f 6e | 20 61 20 50 79 72 61 6d |o run on| a Pyram|
|00000f60| 69 64 2e 20 20 54 68 69 | 73 20 6d 65 61 6e 74 20 |id. Thi|s meant |
|00000f70| 63 68 61 6e 67 69 6e 67 | 20 79 79 6c 76 61 6c 0a |changing| yylval.|
|00000f80| 20 2a 09 09 74 6f 20 62 | 65 20 61 20 25 75 6e 69 | *..to b|e a %uni|
|00000f90| 6f 6e 2c 20 61 6e 64 20 | 74 68 65 6e 20 70 75 74 |on, and |then put|
|00000fa0| 74 69 6e 67 20 69 6e 20 | 74 68 65 20 61 70 70 72 |ting in |the appr|
|00000fb0| 6f 70 72 69 61 74 65 0a | 20 2a 09 09 74 79 70 65 |opriate.| *..type|
|00000fc0| 63 61 73 74 73 20 77 68 | 65 72 65 20 69 6e 74 73 |casts wh|ere ints|
|00000fd0| 20 61 72 65 20 70 6f 69 | 6e 74 65 72 73 20 61 72 | are poi|nters ar|
|00000fe0| 65 20 75 73 65 64 20 69 | 6e 74 65 72 63 68 61 6e |e used i|nterchan|
|00000ff0| 67 65 61 62 6c 79 2e 0a | 20 2a 09 09 54 68 65 20 |geably..| *..The |
|00001000| 63 75 72 72 65 6e 74 20 | 76 65 72 73 69 6f 6e 20 |current |version |
|00001010| 73 74 69 6c 6c 20 70 72 | 6f 62 61 62 6c 79 20 77 |still pr|obably w|
|00001020| 6f 6e 27 74 20 72 75 6e | 20 6f 6e 20 6d 61 63 68 |on't run| on mach|
|00001030| 69 6e 65 73 20 77 68 65 | 72 65 0a 20 2a 09 09 73 |ines whe|re. *..s|
|00001040| 69 7a 65 6f 66 28 69 6e | 74 29 20 21 3d 20 73 69 |izeof(in|t) != si|
|00001050| 7a 65 6f 66 28 63 68 61 | 72 20 2a 29 2e 0a 20 2a |zeof(cha|r *).. *|
|00001060| 09 09 41 6c 73 6f 20 63 | 68 61 6e 67 65 64 20 65 |..Also c|hanged e|
|00001070| 6d 69 74 28 29 20 74 6f | 20 75 73 65 20 76 61 72 |mit() to| use var|
|00001080| 61 72 67 73 2c 20 61 6e | 64 20 67 6f 74 20 72 69 |args, an|d got ri|
|00001090| 64 20 6f 66 20 74 68 65 | 0a 20 2a 09 09 6f 6c 64 |d of the|. *..old|
|000010a0| 20 73 74 79 6c 65 20 3d | 20 69 6e 20 66 72 6f 6e | style =| in fron|
|000010b0| 74 20 6f 66 20 79 61 63 | 63 20 61 63 74 69 6f 6e |t of yac|c action|
|000010c0| 20 63 6f 64 65 2e 0a 20 | 2a 09 09 09 2d 43 6f 6c | code.. |*...-Col|
|000010d0| 69 6e 20 4b 65 6c 6c 65 | 79 20 20 76 75 2d 76 6c |in Kelle|y vu-vl|
|000010e0| 73 69 21 63 6f 6c 69 6e | 0a 20 2a 0a 20 2a 20 63 |si!colin|. *. * c|
|000010f0| 64 6b 20 31 30 2d 32 2d | 38 36 09 41 64 64 65 64 |dk 10-2-|86.Added|
|00001100| 20 73 6f 6d 65 20 6d 6f | 72 65 20 74 79 70 65 63 | some mo|re typec|
|00001110| 61 73 74 73 20 74 6f 20 | 6b 65 65 70 20 6c 69 6e |asts to |keep lin|
|00001120| 74 20 61 20 6c 69 74 74 | 6c 65 20 68 61 70 70 69 |t a litt|le happi|
|00001130| 65 72 2e 0a 20 2a 09 09 | 52 65 6d 6f 76 65 64 20 |er.. *..|Removed |
|00001140| 73 65 76 65 72 61 6c 20 | 75 6e 75 73 65 64 20 76 |several |unused v|
|00001150| 61 72 69 61 62 6c 65 73 | 2e 20 20 43 68 61 6e 67 |ariables|. Chang|
|00001160| 65 64 20 6d 6f 73 74 20 | 76 61 72 73 0a 20 2a 09 |ed most |vars. *.|
|00001170| 09 64 65 63 6c 61 72 65 | 64 20 61 73 20 63 68 61 |.declare|d as cha|
|00001180| 72 20 74 6f 20 69 6e 74 | 2c 20 73 69 6e 63 65 20 |r to int|, since |
|00001190| 6d 61 6e 79 20 6f 66 20 | 74 68 65 6d 20 77 65 72 |many of |them wer|
|000011a0| 65 20 62 65 69 6e 67 0a | 20 2a 09 09 63 6f 6d 70 |e being.| *..comp|
|000011b0| 61 72 65 64 20 77 69 74 | 68 20 2d 31 21 20 20 49 |ared wit|h -1! I|
|000011c0| 20 73 74 69 6c 6c 20 64 | 6f 6e 27 74 20 6b 6e 6f | still d|on't kno|
|000011d0| 77 20 77 68 61 74 27 73 | 20 67 6f 69 6e 67 20 6f |w what's| going o|
|000011e0| 6e 20 77 69 74 68 0a 20 | 2a 09 09 65 73 74 5b 5d |n with. |*..est[]|
|000011f0| 5b 5d 20 62 65 69 6e 67 | 20 6d 61 6c 6c 6f 63 27 |[] being| malloc'|
|00001200| 64 20 61 6e 64 20 66 72 | 65 65 27 64 20 65 76 65 |d and fr|ee'd eve|
|00001210| 72 79 77 68 65 72 65 2e | 2e 2e 69 74 20 6c 6f 6f |rywhere.|..it loo|
|00001220| 6b 73 20 70 72 65 74 74 | 79 0a 20 2a 09 09 66 69 |ks prett|y. *..fi|
|00001230| 73 68 79 2e 2e 2e 0a 20 | 2a 0a 20 2a 20 63 64 6b |shy.... |*. * cdk|
|00001240| 20 31 2d 31 38 2d 38 37 | 20 20 41 64 64 65 64 20 | 1-18-87| Added |
|00001250| 4d 49 4f 20 63 6f 64 65 | 20 74 6f 20 65 6d 75 6c |MIO code| to emul|
|00001260| 61 74 65 20 27 6d 66 69 | 6c 65 27 20 75 73 69 6e |ate 'mfi|le' usin|
|00001270| 67 20 6d 61 6c 6c 6f 63 | 28 29 27 64 20 6d 65 6d |g malloc|()'d mem|
|00001280| 6f 72 79 2e 0a 20 2a 09 | 09 54 68 69 73 20 77 61 |ory.. *.|.This wa|
|00001290| 73 20 6e 65 65 64 65 64 | 20 74 6f 20 67 65 74 20 |s needed| to get |
|000012a0| 74 68 65 20 63 6f 64 65 | 20 74 6f 20 77 6f 72 6b |the code| to work|
|000012b0| 20 77 68 65 6e 20 63 6f | 6d 70 69 6c 65 64 20 75 | when co|mpiled u|
|000012c0| 6e 64 65 72 0a 20 2a 09 | 09 4d 53 43 20 34 2e 30 |nder. *.|.MSC 4.0|
|000012d0| 20 6f 6e 20 61 20 50 43 | 2c 20 61 6e 64 20 69 74 | on a PC|, and it|
|000012e0| 27 73 20 70 72 6f 62 61 | 62 6c 79 20 66 61 73 74 |'s proba|bly fast|
|000012f0| 65 72 20 61 6e 79 77 61 | 79 2e 0a 20 2a 0a 20 2a |er anywa|y.. *. *|
|00001300| 20 63 64 6b 20 32 2d 35 | 2d 38 37 09 41 64 64 65 | cdk 2-5|-87.Adde|
|00001310| 64 20 27 63 6d 70 27 20 | 61 73 20 61 20 73 79 6e |d 'cmp' |as a syn|
|00001320| 6f 6e 79 6d 20 66 6f 72 | 20 27 63 70 27 2c 20 27 |onym for| 'cp', '|
|00001330| 6a 6d 70 27 20 61 73 20 | 61 20 73 79 6e 6f 6e 79 |jmp' as |a synony|
|00001340| 6d 20 66 6f 72 0a 20 2a | 09 09 27 6a 70 27 2c 20 |m for. *|..'jp', |
|00001350| 61 6e 64 20 61 64 64 65 | 64 20 74 6f 6c 65 72 61 |and adde|d tolera|
|00001360| 6e 63 65 20 6f 66 20 61 | 63 63 75 6d 75 6c 61 74 |nce of a|ccumulat|
|00001370| 6f 72 20 73 70 65 63 69 | 66 69 63 61 74 69 6f 6e |or speci|fication|
|00001380| 20 66 6f 72 20 61 72 69 | 74 68 6d 65 74 69 63 0a | for ari|thmetic.|
|00001390| 20 2a 09 09 61 6e 64 20 | 6c 6f 67 69 63 61 6c 20 | *..and |logical |
|000013a0| 69 6e 73 74 72 75 63 74 | 69 6f 6e 73 2e 20 20 28 |instruct|ions. (|
|000013b0| 46 6f 72 20 65 78 61 6d | 70 6c 65 2c 20 27 6f 72 |For exam|ple, 'or|
|000013c0| 20 61 2c 31 32 27 20 69 | 73 20 6e 6f 77 20 61 63 | a,12' i|s now ac|
|000013d0| 63 65 70 74 65 64 2c 0a | 20 2a 09 09 73 61 6d 65 |cepted,.| *..same|
|000013e0| 20 61 73 20 27 6f 72 20 | 31 32 27 2e 29 0a 20 2a | as 'or |12'.). *|
|000013f0| 2f 0a 0a 0a 23 64 65 66 | 69 6e 65 20 4d 49 4f 09 |/...#def|ine MIO.|
|00001400| 09 2f 2a 20 75 73 65 20 | 65 6d 75 6c 61 74 69 6f |./* use |emulatio|
|00001410| 6e 20 72 6f 75 74 69 6e | 65 73 20 66 72 6f 6d 20 |n routin|es from |
|00001420| 6d 69 6f 2e 63 20 2a 2f | 0a 0a 23 69 6e 63 6c 75 |mio.c */|..#inclu|
|00001430| 64 65 20 3c 73 74 64 69 | 6f 2e 68 3e 0a 23 69 66 |de <stdi|o.h>.#if|
|00001440| 64 65 66 20 4d 53 44 4f | 53 0a 23 69 6e 63 6c 75 |def MSDO|S.#inclu|
|00001450| 64 65 20 3c 66 63 6e 74 | 6c 2e 68 3e 0a 23 65 6c |de <fcnt|l.h>.#el|
|00001460| 73 65 0a 23 69 6e 63 6c | 75 64 65 20 3c 73 79 73 |se.#incl|ude <sys|
|00001470| 2f 66 69 6c 65 2e 68 3e | 09 2f 2a 20 66 6f 72 20 |/file.h>|./* for |
|00001480| 6f 70 65 6e 28 29 20 63 | 61 6c 6c 73 20 2a 2f 0a |open() c|alls */.|
|00001490| 23 65 6e 64 69 66 0a 0a | 23 69 66 64 65 66 20 76 |#endif..|#ifdef v|
|000014a0| 61 78 31 31 63 0a 23 64 | 65 66 69 6e 65 20 75 6e |ax11c.#d|efine un|
|000014b0| 6c 69 6e 6b 28 66 69 6c | 65 6e 61 6d 65 29 20 64 |link(fil|ename) d|
|000014c0| 65 6c 65 74 65 28 66 69 | 6c 65 6e 61 6d 65 29 0a |elete(fi|lename).|
|000014d0| 23 65 6e 64 69 66 0a 0a | 23 69 66 64 65 66 20 4d |#endif..|#ifdef M|
|000014e0| 49 4f 0a 46 49 4c 45 20 | 2a 6d 66 6f 70 65 6e 28 |IO.FILE |*mfopen(|
|000014f0| 29 3b 0a 23 65 6c 73 65 | 0a 23 64 65 66 69 6e 65 |);.#else|.#define|
|00001500| 20 6d 66 6f 70 65 6e 28 | 66 69 6c 65 6e 61 6d 65 | mfopen(|filename|
|00001510| 2c 6d 6f 64 65 29 20 66 | 6f 70 65 6e 28 66 69 6c |,mode) f|open(fil|
|00001520| 65 6e 61 6d 65 2c 6d 6f | 64 65 29 0a 23 64 65 66 |ename,mo|de).#def|
|00001530| 69 6e 65 20 6d 66 63 6c | 6f 73 65 28 66 69 6c 65 |ine mfcl|ose(file|
|00001540| 6e 61 6d 65 2c 6d 6f 64 | 65 29 20 66 63 6c 6f 73 |name,mod|e) fclos|
|00001550| 65 28 66 69 6c 65 6e 61 | 6d 65 2c 6d 6f 64 65 29 |e(filena|me,mode)|
|00001560| 20 0a 23 64 65 66 69 6e | 65 20 6d 66 70 75 74 63 | .#defin|e mfputc|
|00001570| 28 63 2c 66 29 20 70 75 | 74 63 28 63 2c 66 29 0a |(c,f) pu|tc(c,f).|
|00001580| 23 64 65 66 69 6e 65 20 | 6d 66 67 65 74 63 28 66 |#define |mfgetc(f|
|00001590| 29 20 67 65 74 63 28 66 | 29 0a 23 64 65 66 69 6e |) getc(f|).#defin|
|000015a0| 65 20 6d 66 73 65 65 6b | 28 66 2c 6c 6f 63 2c 6f |e mfseek|(f,loc,o|
|000015b0| 72 69 67 69 6e 29 20 66 | 73 65 65 6b 28 66 2c 6c |rigin) f|seek(f,l|
|000015c0| 6f 63 2c 6f 72 69 67 69 | 6e 29 0a 23 64 65 66 69 |oc,origi|n).#defi|
|000015d0| 6e 65 20 6d 66 72 65 61 | 64 28 70 74 72 2c 73 69 |ne mfrea|d(ptr,si|
|000015e0| 7a 65 2c 6e 69 74 65 6d | 73 2c 66 29 20 66 72 65 |ze,nitem|s,f) fre|
|000015f0| 61 64 28 70 74 72 2c 73 | 69 7a 65 2c 6e 69 74 65 |ad(ptr,s|ize,nite|
|00001600| 6d 73 2c 66 29 0a 23 64 | 65 66 69 6e 65 20 6d 66 |ms,f).#d|efine mf|
|00001610| 77 72 69 74 65 28 70 74 | 72 2c 73 69 7a 65 2c 6e |write(pt|r,size,n|
|00001620| 69 74 65 6d 73 2c 66 29 | 20 66 72 65 61 64 28 70 |items,f)| fread(p|
|00001630| 74 72 2c 73 69 7a 65 2c | 6e 69 74 65 6d 73 2c 66 |tr,size,|nitems,f|
|00001640| 29 0a 23 65 6e 64 69 66 | 20 2f 2a 20 4d 49 4f 20 |).#endif| /* MIO |
|00001650| 2a 2f 0a 0a 2f 2a 0a 20 | 2a 20 44 45 42 55 47 20 |*/../*. |* DEBUG |
|00001660| 74 75 72 6e 73 20 6f 6e | 20 70 61 73 73 20 72 65 |turns on| pass re|
|00001670| 70 6f 72 74 69 6e 67 2e | 0a 20 2a 20 4d 61 63 72 |porting.|. * Macr|
|00001680| 6f 20 64 65 62 75 67 20 | 61 6e 64 20 54 6f 6b 65 |o debug |and Toke|
|00001690| 6e 20 64 65 62 75 67 20 | 65 6e 61 62 6c 65 73 2e |n debug |enables.|
|000016a0| 0a 23 64 65 66 69 6e 65 | 09 44 45 42 55 47 0a 23 |.#define|.DEBUG.#|
|000016b0| 64 65 66 69 6e 65 09 4d | 5f 44 45 42 55 47 09 0a |define.M|_DEBUG..|
|000016c0| 23 64 65 66 69 6e 65 09 | 54 5f 44 45 42 55 47 0a |#define.|T_DEBUG.|
|000016d0| 20 2a 2f 0a 0a 23 64 65 | 66 69 6e 65 20 49 54 45 | */..#de|fine ITE|
|000016e0| 4d 54 41 42 4c 45 53 49 | 5a 45 09 32 30 30 30 0a |MTABLESI|ZE.2000.|
|000016f0| 23 64 65 66 69 6e 65 20 | 54 45 4d 50 42 55 46 53 |#define |TEMPBUFS|
|00001700| 49 5a 45 09 32 30 30 0a | 23 64 65 66 69 6e 65 20 |IZE.200.|#define |
|00001710| 4c 49 4e 45 42 55 46 46 | 45 52 53 49 5a 45 09 32 |LINEBUFF|ERSIZE.2|
|00001720| 30 30 0a 23 64 65 66 69 | 6e 65 20 45 4d 49 54 42 |00.#defi|ne EMITB|
|00001730| 55 46 46 45 52 53 49 5a | 45 09 32 30 30 0a 23 64 |UFFERSIZ|E.200.#d|
|00001740| 65 66 69 6e 65 20 4d 41 | 58 53 59 4d 42 4f 4c 53 |efine MA|XSYMBOLS|
|00001750| 49 5a 45 09 31 35 0a 23 | 64 65 66 69 6e 65 20 49 |IZE.15.#|define I|
|00001760| 46 53 54 41 43 4b 53 49 | 5a 45 09 32 30 0a 23 64 |FSTACKSI|ZE.20.#d|
|00001770| 65 66 69 6e 65 20 4d 41 | 58 49 46 53 09 09 31 35 |efine MA|XIFS..15|
|00001780| 30 0a 23 64 65 66 69 6e | 65 20 54 49 54 4c 45 4c |0.#defin|e TITLEL|
|00001790| 45 4e 09 35 30 0a 23 64 | 65 66 69 6e 65 20 42 49 |EN.50.#d|efine BI|
|000017a0| 4e 50 45 52 4c 49 4e 45 | 09 31 36 0a 23 64 65 66 |NPERLINE|.16.#def|
|000017b0| 69 6e 65 09 50 41 52 4d | 4d 41 58 09 09 32 35 0a |ine.PARM|MAX..25.|
|000017c0| 23 64 65 66 69 6e 65 20 | 4d 41 58 45 58 50 09 09 |#define |MAXEXP..|
|000017d0| 32 35 0a 23 64 65 66 69 | 6e 65 20 53 59 4d 4d 41 |25.#defi|ne SYMMA|
|000017e0| 4a 49 43 09 30 37 32 30 | 33 0a 23 64 65 66 69 6e |JIC.0720|3.#defin|
|000017f0| 65 09 4e 45 53 54 5f 49 | 4e 09 09 38 0a 0a 0a 23 |e.NEST_I|N..8...#|
|00001800| 64 65 66 69 6e 65 20 6c | 6f 6f 70 09 66 6f 72 28 |define l|oop.for(|
|00001810| 3b 3b 29 0a 0a 79 79 65 | 72 72 6f 72 28 65 72 72 |;;)..yye|rror(err|
|00001820| 29 0a 63 68 61 72 20 2a | 65 72 72 3b 0a 7b 7d 09 |).char *|err;.{}.|
|00001830| 09 2f 2a 20 77 65 20 77 | 69 6c 6c 20 64 6f 20 6f |./* we w|ill do o|
|00001840| 75 72 20 6f 77 6e 20 65 | 72 72 6f 72 20 70 72 69 |ur own e|rror pri|
|00001850| 6e 74 69 6e 67 20 2a 2f | 0a 0a 73 74 72 75 63 74 |nting */|..struct|
|00001860| 09 69 74 65 6d 09 7b 0a | 09 63 68 61 72 09 2a 69 |.item.{.|.char.*i|
|00001870| 5f 73 74 72 69 6e 67 3b | 0a 09 69 6e 74 09 69 5f |_string;|..int.i_|
|00001880| 76 61 6c 75 65 3b 0a 09 | 69 6e 74 09 69 5f 74 6f |value;..|int.i_to|
|00001890| 6b 65 6e 3b 0a 09 69 6e | 74 09 69 5f 75 73 65 73 |ken;..in|t.i_uses|
|000018a0| 3b 0a 7d 3b 0a 0a 46 49 | 4c 45 09 2a 66 6f 75 74 |;.};..FI|LE.*fout|
|000018b0| 2c 0a 09 2a 66 62 75 66 | 2c 0a 09 2a 66 69 6e 5b |,..*fbuf|,..*fin[|
|000018c0| 4e 45 53 54 5f 49 4e 5d | 2c 0a 09 2a 6e 6f 77 5f |NEST_IN]|,..*now_|
|000018d0| 66 69 6c 65 20 3b 0a 0a | 63 68 61 72 20 2a 6d 61 |file ;..|char *ma|
|000018e0| 6c 6c 6f 63 28 29 20 3b | 0a 0a 69 6e 74 09 70 61 |lloc() ;|..int.pa|
|000018f0| 73 73 32 3b 09 2f 2a 73 | 65 74 20 77 68 65 6e 20 |ss2;./*s|et when |
|00001900| 70 61 73 73 20 6f 6e 65 | 20 63 6f 6d 70 6c 65 74 |pass one| complet|
|00001910| 65 64 2a 2f 0a 69 6e 74 | 09 64 6f 6c 6c 61 72 73 |ed*/.int|.dollars|
|00001920| 69 67 6e 20 3b 09 2f 2a | 20 6c 6f 63 61 74 69 6f |ign ;./*| locatio|
|00001930| 6e 20 63 6f 75 6e 74 65 | 72 20 2a 2f 0a 69 6e 74 |n counte|r */.int|
|00001940| 09 6f 6c 64 64 6f 6c 6c | 61 72 20 3b 09 2f 2a 20 |.olddoll|ar ;./* |
|00001950| 6b 65 70 74 20 74 6f 20 | 70 75 74 20 6f 75 74 20 |kept to |put out |
|00001960| 62 69 6e 61 72 79 20 2a | 2f 0a 0a 2f 2a 20 70 72 |binary *|/../* pr|
|00001970| 6f 67 72 61 6d 20 63 6f | 75 6e 74 65 72 20 73 61 |ogram co|unter sa|
|00001980| 76 65 20 66 6f 72 20 50 | 48 41 53 45 2f 44 45 50 |ve for P|HASE/DEP|
|00001990| 48 41 53 45 20 2a 2f 0a | 69 6e 74 09 70 68 64 6f |HASE */.|int.phdo|
|000019a0| 6c 6c 61 72 2c 20 70 68 | 62 65 67 69 6e 2c 20 70 |llar, ph|begin, p|
|000019b0| 68 61 73 65 66 6c 61 67 | 20 3b 0a 0a 63 68 61 72 |haseflag| ;..char|
|000019c0| 09 2a 73 72 63 5f 6e 61 | 6d 65 5b 4e 45 53 54 5f |.*src_na|me[NEST_|
|000019d0| 49 4e 5d 20 3b 0a 69 6e | 74 09 6c 69 6e 65 69 6e |IN] ;.in|t.linein|
|000019e0| 5b 4e 45 53 54 5f 49 4e | 5d 20 3b 0a 69 6e 74 09 |[NEST_IN|] ;.int.|
|000019f0| 6e 6f 77 5f 69 6e 20 3b | 0a 0a 0a 0a 23 64 65 66 |now_in ;|....#def|
|00001a00| 69 6e 65 20 62 66 6c 61 | 67 09 30 09 2f 2a 20 62 |ine bfla|g.0./* b|
|00001a10| 61 6c 61 6e 63 65 20 65 | 72 72 6f 72 20 2a 2f 0a |alance e|rror */.|
|00001a20| 23 64 65 66 69 6e 65 20 | 65 66 6c 61 67 09 31 09 |#define |eflag.1.|
|00001a30| 2f 2a 20 65 78 70 72 65 | 73 73 69 6f 6e 20 65 72 |/* expre|ssion er|
|00001a40| 72 6f 72 20 2a 2f 0a 23 | 64 65 66 69 6e 65 20 66 |ror */.#|define f|
|00001a50| 66 6c 61 67 09 32 09 2f | 2a 20 66 6f 72 6d 61 74 |flag.2./|* format|
|00001a60| 20 65 72 72 6f 72 20 2a | 2f 0a 23 64 65 66 69 6e | error *|/.#defin|
|00001a70| 65 20 69 66 6c 61 67 09 | 33 09 2f 2a 20 62 61 64 |e iflag.|3./* bad|
|00001a80| 20 64 69 67 69 74 73 20 | 2a 2f 0a 23 64 65 66 69 | digits |*/.#defi|
|00001a90| 6e 65 20 6d 66 6c 61 67 | 09 34 09 2f 2a 20 6d 75 |ne mflag|.4./* mu|
|00001aa0| 6c 74 69 70 6c 79 20 64 | 65 66 69 6e 65 64 20 2a |ltiply d|efined *|
|00001ab0| 2f 0a 23 64 65 66 69 6e | 65 20 70 66 6c 61 67 09 |/.#defin|e pflag.|
|00001ac0| 35 09 2f 2a 20 70 68 61 | 73 65 20 65 72 72 6f 72 |5./* pha|se error|
|00001ad0| 20 2a 2f 0a 23 64 65 66 | 69 6e 65 20 75 66 6c 61 | */.#def|ine ufla|
|00001ae0| 67 09 36 09 2f 2a 20 75 | 6e 64 65 63 6c 61 72 65 |g.6./* u|ndeclare|
|00001af0| 64 20 75 73 65 64 20 2a | 2f 0a 23 64 65 66 69 6e |d used *|/.#defin|
|00001b00| 65 20 76 66 6c 61 67 09 | 37 09 2f 2a 20 76 61 6c |e vflag.|7./* val|
|00001b10| 75 65 20 6f 75 74 20 6f | 66 20 72 61 6e 67 65 20 |ue out o|f range |
|00001b20| 2a 2f 0a 23 64 65 66 69 | 6e 65 20 6f 66 6c 61 67 |*/.#defi|ne oflag|
|00001b30| 09 38 09 2f 2a 20 70 68 | 61 73 65 2f 64 65 70 68 |.8./* ph|ase/deph|
|00001b40| 61 73 65 20 65 72 72 6f | 72 20 2a 2f 0a 0a 23 64 |ase erro|r */..#d|
|00001b50| 65 66 69 6e 65 20 46 4c | 41 47 53 09 39 09 2f 2a |efine FL|AGS.9./*|
|00001b60| 20 6e 75 6d 62 65 72 20 | 6f 66 20 66 6c 61 67 73 | number |of flags|
|00001b70| 20 2a 2f 0a 0a 63 68 61 | 72 09 65 72 72 5b 46 4c | */..cha|r.err[FL|
|00001b80| 41 47 53 5d 3b 0a 69 6e | 74 09 6b 65 65 70 65 72 |AGS];.in|t.keeper|
|00001b90| 72 5b 46 4c 41 47 53 5d | 3b 0a 63 68 61 72 09 65 |r[FLAGS]|;.char.e|
|00001ba0| 72 72 6c 65 74 5b 5d 3d | 22 42 45 46 49 4d 50 55 |rrlet[]=|"BEFIMPU|
|00001bb0| 56 4f 22 3b 0a 63 68 61 | 72 09 2a 65 72 72 6e 61 |VO";.cha|r.*errna|
|00001bc0| 6d 65 5b 5d 3d 7b 0a 09 | 22 42 61 6c 61 6e 63 65 |me[]={..|"Balance|
|00001bd0| 22 2c 0a 09 22 45 78 70 | 72 65 73 73 69 6f 6e 22 |",.."Exp|ression"|
|00001be0| 2c 0a 09 22 46 6f 72 6d | 61 74 22 2c 0a 09 22 44 |,.."Form|at",.."D|
|00001bf0| 69 67 69 74 22 2c 0a 09 | 22 4d 75 6c 74 2e 20 64 |igit",..|"Mult. d|
|00001c00| 65 66 2e 22 2c 0a 09 22 | 50 68 61 73 65 22 2c 0a |ef.",.."|Phase",.|
|00001c10| 09 22 55 6e 64 65 63 6c | 61 72 65 64 22 2c 0a 09 |."Undecl|ared",..|
|00001c20| 22 56 61 6c 75 65 22 2c | 0a 09 22 50 68 61 73 65 |"Value",|.."Phase|
|00001c30| 2f 44 65 70 68 61 73 65 | 22 2c 0a 7d 3b 0a 0a 0a |/Dephase|",.};...|
|00001c40| 63 68 61 72 09 6c 69 6e | 65 62 75 66 5b 4c 49 4e |char.lin|ebuf[LIN|
|00001c50| 45 42 55 46 46 45 52 53 | 49 5a 45 5d 3b 0a 63 68 |EBUFFERS|IZE];.ch|
|00001c60| 61 72 09 2a 6c 69 6e 65 | 70 74 72 3b 0a 63 68 61 |ar.*line|ptr;.cha|
|00001c70| 72 09 2a 6c 69 6e 65 6d | 61 78 20 3d 20 26 6c 69 |r.*linem|ax = &li|
|00001c80| 6e 65 62 75 66 5b 4c 49 | 4e 45 42 55 46 46 45 52 |nebuf[LI|NEBUFFER|
|00001c90| 53 49 5a 45 5d 3b 0a 0a | 63 68 61 72 09 6f 75 74 |SIZE];..|char.out|
|00001ca0| 62 69 6e 5b 42 49 4e 50 | 45 52 4c 49 4e 45 5d 3b |bin[BINP|ERLINE];|
|00001cb0| 0a 63 68 61 72 09 2a 6f | 75 74 62 69 6e 70 20 3d |.char.*o|utbinp =|
|00001cc0| 20 6f 75 74 62 69 6e 3b | 0a 63 68 61 72 09 2a 6f | outbin;|.char.*o|
|00001cd0| 75 74 62 69 6e 6d 20 3d | 20 26 6f 75 74 62 69 6e |utbinm =| &outbin|
|00001ce0| 5b 42 49 4e 50 45 52 4c | 49 4e 45 5d 3b 0a 0a 63 |[BINPERL|INE];..c|
|00001cf0| 68 61 72 09 65 6d 69 74 | 62 75 66 5b 45 4d 49 54 |har.emit|buf[EMIT|
|00001d00| 42 55 46 46 45 52 53 49 | 5a 45 5d 3b 0a 63 68 61 |BUFFERSI|ZE];.cha|
|00001d10| 72 09 2a 65 6d 69 74 70 | 74 72 3b 0a 0a 63 68 61 |r.*emitp|tr;..cha|
|00001d20| 72 09 69 66 73 74 61 63 | 6b 5b 49 46 53 54 41 43 |r.ifstac|k[IFSTAC|
|00001d30| 4b 53 49 5a 45 5d 3b 0a | 63 68 61 72 09 2a 69 66 |KSIZE];.|char.*if|
|00001d40| 70 74 72 3b 0a 63 68 61 | 72 09 2a 69 66 73 74 6d |ptr;.cha|r.*ifstm|
|00001d50| 61 78 20 3d 20 26 69 66 | 73 74 61 63 6b 5b 49 46 |ax = &if|stack[IF|
|00001d60| 53 54 41 43 4b 53 49 5a | 45 2d 31 5d 3b 0a 0a 0a |STACKSIZ|E-1];...|
|00001d70| 63 68 61 72 09 65 78 70 | 69 66 5b 4d 41 58 49 46 |char.exp|if[MAXIF|
|00001d80| 53 5d 3b 0a 63 68 61 72 | 09 2a 65 78 70 69 66 70 |S];.char|.*expifp|
|00001d90| 3b 0a 63 68 61 72 09 2a | 65 78 70 69 66 6d 61 78 |;.char.*|expifmax|
|00001da0| 20 3d 20 26 65 78 70 69 | 66 5b 4d 41 58 49 46 53 | = &expi|f[MAXIFS|
|00001db0| 5d 3b 0a 0a 63 68 61 72 | 09 68 65 78 61 64 65 63 |];..char|.hexadec|
|00001dc0| 5b 5d 20 3d 20 22 30 31 | 32 33 34 35 36 37 38 39 |[] = "01|23456789|
|00001dd0| 41 42 43 44 45 46 22 20 | 3b 0a 63 68 61 72 09 2a |ABCDEF" |;.char.*|
|00001de0| 65 78 70 73 74 61 63 6b | 5b 4d 41 58 45 58 50 5d |expstack|[MAXEXP]|
|00001df0| 3b 0a 69 6e 74 09 65 78 | 70 70 74 72 3b 0a 0a 0a |;.int.ex|pptr;...|
|00001e00| 69 6e 74 09 6e 69 74 65 | 6d 73 3b 0a 69 6e 74 09 |int.nite|ms;.int.|
|00001e10| 6c 69 6e 65 63 6e 74 3b | 0a 69 6e 74 09 6e 62 79 |linecnt;|.int.nby|
|00001e20| 74 65 73 3b 0a 69 6e 74 | 09 69 6e 76 65 6e 74 65 |tes;.int|.invente|
|00001e30| 64 3b 0a 0a 0a 63 68 61 | 72 09 74 65 6d 70 62 75 |d;...cha|r.tempbu|
|00001e40| 66 5b 54 45 4d 50 42 55 | 46 53 49 5a 45 5d 3b 0a |f[TEMPBU|FSIZE];.|
|00001e50| 63 68 61 72 09 2a 74 65 | 6d 70 6d 61 78 20 3d 20 |char.*te|mpmax = |
|00001e60| 26 74 65 6d 70 62 75 66 | 5b 54 45 4d 50 42 55 46 |&tempbuf|[TEMPBUF|
|00001e70| 53 49 5a 45 2d 31 5d 3b | 0a 0a 63 68 61 72 09 69 |SIZE-1];|..char.i|
|00001e80| 6e 6d 6c 65 78 3b 0a 63 | 68 61 72 09 61 72 67 5f |nmlex;.c|har.arg_|
|00001e90| 66 6c 61 67 3b 0a 63 68 | 61 72 09 71 75 6f 74 65 |flag;.ch|ar.quote|
|00001ea0| 66 6c 61 67 3b 0a 69 6e | 74 09 70 61 72 6d 5f 6e |flag;.in|t.parm_n|
|00001eb0| 75 6d 62 65 72 3b 0a 69 | 6e 74 09 65 78 70 5f 6e |umber;.i|nt.exp_n|
|00001ec0| 75 6d 62 65 72 3b 0a 63 | 68 61 72 09 73 79 6d 6c |umber;.c|har.syml|
|00001ed0| 6f 6e 67 5b 5d 20 3d 20 | 22 53 79 6d 62 6f 6c 20 |ong[] = |"Symbol |
|00001ee0| 74 6f 6f 20 6c 6f 6e 67 | 22 3b 0a 0a 69 6e 74 09 |too long|";..int.|
|00001ef0| 64 69 73 70 3b 0a 23 64 | 65 66 69 6e 65 20 46 4c |disp;.#d|efine FL|
|00001f00| 4f 43 09 50 41 52 4d 4d | 41 58 0a 23 64 65 66 69 |OC.PARMM|AX.#defi|
|00001f10| 6e 65 20 54 45 4d 50 4e | 55 4d 09 50 41 52 4d 4d |ne TEMPN|UM.PARMM|
|00001f20| 41 58 2b 31 0a 63 68 61 | 72 09 2a 2a 65 73 74 3b |AX+1.cha|r.**est;|
|00001f30| 0a 63 68 61 72 09 2a 2a | 65 73 74 32 3b 0a 0a 63 |.char.**|est2;..c|
|00001f40| 68 61 72 09 2a 66 6c 6f | 63 3b 0a 69 6e 74 09 6d |har.*flo|c;.int.m|
|00001f50| 66 70 74 72 3b 0a 46 49 | 4c 45 09 2a 6d 66 69 6c |fptr;.FI|LE.*mfil|
|00001f60| 65 3b 0a 0a 63 68 61 72 | 09 2a 77 72 69 74 65 73 |e;..char|.*writes|
|00001f70| 79 6d 73 3b 0a 0a 0a 63 | 68 61 72 09 2a 74 69 74 |yms;...c|har.*tit|
|00001f80| 6c 65 3b 0a 63 68 61 72 | 09 74 69 74 6c 65 73 70 |le;.char|.titlesp|
|00001f90| 61 63 65 5b 54 49 54 4c | 45 4c 45 4e 5d 3b 0a 63 |ace[TITL|ELEN];.c|
|00001fa0| 68 61 72 09 2a 74 69 6d | 70 2c 2a 63 74 69 6d 65 |har.*tim|p,*ctime|
|00001fb0| 28 29 3b 0a 63 68 61 72 | 09 2a 73 6f 75 72 63 65 |();.char|.*source|
|00001fc0| 66 3b 0a 63 68 61 72 09 | 73 72 63 5b 31 35 5d 3b |f;.char.|src[15];|
|00001fd0| 0a 63 68 61 72 09 62 69 | 6e 5b 31 35 5d 3b 0a 63 |.char.bi|n[15];.c|
|00001fe0| 68 61 72 09 6d 74 6d 70 | 5b 31 35 5d 3b 0a 63 68 |har.mtmp|[15];.ch|
|00001ff0| 61 72 09 6c 69 73 74 66 | 5b 31 35 5d 3b 0a 0a 63 |ar.listf|[15];..c|
|00002000| 68 61 72 09 62 6f 70 74 | 20 3d 20 31 2c 0a 09 65 |har.bopt| = 1,..e|
|00002010| 64 65 66 20 3d 20 31 2c | 0a 09 65 6f 70 74 20 3d |def = 1,|..eopt =|
|00002020| 20 31 2c 0a 09 66 64 65 | 66 20 3d 20 30 2c 0a 09 | 1,..fde|f = 0,..|
|00002030| 66 6f 70 74 20 3d 20 30 | 2c 0a 09 67 64 65 66 20 |fopt = 0|,..gdef |
|00002040| 3d 20 31 2c 0a 09 67 6f | 70 74 20 3d 20 31 2c 0a |= 1,..go|pt = 1,.|
|00002050| 09 69 6f 70 74 20 3d 20 | 30 20 2c 09 2f 2a 20 6c |.iopt = |0 ,./* l|
|00002060| 69 73 74 20 69 6e 63 6c | 75 64 65 20 66 69 6c 65 |ist incl|ude file|
|00002070| 73 20 2a 2f 0a 09 6c 73 | 74 6f 66 66 20 3d 20 30 |s */..ls|toff = 0|
|00002080| 2c 0a 09 6c 73 74 6f 6e | 20 3d 20 30 2c 09 2f 2a |,..lston| = 0,./*|
|00002090| 20 66 6c 61 67 20 74 6f | 20 66 6f 72 63 65 20 6c | flag to| force l|
|000020a0| 69 73 74 69 6e 67 20 6f | 6e 20 2a 2f 0a 09 6c 6f |isting o|n */..lo|
|000020b0| 70 74 20 3d 20 30 2c 0a | 09 6d 64 65 66 20 3d 20 |pt = 0,.|.mdef = |
|000020c0| 30 2c 0a 09 6d 6f 70 74 | 20 3d 20 30 2c 0a 09 6e |0,..mopt| = 0,..n|
|000020d0| 6f 70 74 20 3d 20 31 20 | 2c 09 2f 2a 20 6c 69 6e |opt = 1 |,./* lin|
|000020e0| 65 20 6e 75 6d 62 65 72 | 73 20 6f 6e 20 61 73 20 |e number|s on as |
|000020f0| 64 65 66 61 75 6c 74 20 | 2a 2f 0a 09 6f 6f 70 74 |default |*/..oopt|
|00002100| 20 3d 20 30 2c 0a 09 70 | 6f 70 74 20 3d 20 31 2c | = 0,..p|opt = 1,|
|00002110| 09 2f 2a 20 66 6f 72 6d | 20 66 65 65 64 20 61 73 |./* form| feed as|
|00002120| 20 64 65 66 61 75 6c 74 | 20 70 61 67 65 20 65 6a | default| page ej|
|00002130| 65 63 74 20 2a 2f 0a 09 | 73 6f 70 74 20 3d 20 30 |ect */..|sopt = 0|
|00002140| 2c 09 2f 2a 20 74 75 72 | 6e 20 6f 6e 20 73 79 6d |,./* tur|n on sym|
|00002150| 62 6f 6c 20 74 61 62 6c | 65 20 6c 69 73 74 69 6e |bol tabl|e listin|
|00002160| 67 20 2a 2f 0a 09 74 6f | 70 74 20 3d 20 31 3b 0a |g */..to|pt = 1;.|
|00002170| 09 73 61 76 65 6f 70 74 | 3b 0a 0a 63 68 61 72 09 |.saveopt|;..char.|
|00002180| 78 65 71 5f 66 6c 61 67 | 20 3d 20 30 3b 0a 69 6e |xeq_flag| = 0;.in|
|00002190| 74 09 78 65 71 3b 0a 0a | 6c 6f 6e 67 09 6e 6f 77 |t.xeq;..|long.now|
|000021a0| 3b 0a 69 6e 74 09 6c 69 | 6e 65 3b 0a 69 6e 74 09 |;.int.li|ne;.int.|
|000021b0| 70 61 67 65 20 3d 20 31 | 3b 0a 0a 73 74 72 75 63 |page = 1|;..struc|
|000021c0| 74 20 73 74 61 62 20 7b | 0a 09 63 68 61 72 09 74 |t stab {|..char.t|
|000021d0| 5f 6e 61 6d 65 5b 4d 41 | 58 53 59 4d 42 4f 4c 53 |_name[MA|XSYMBOLS|
|000021e0| 49 5a 45 2b 31 5d 3b 0a | 09 69 6e 74 09 74 5f 76 |IZE+1];.|.int.t_v|
|000021f0| 61 6c 75 65 3b 0a 09 69 | 6e 74 09 74 5f 74 6f 6b |alue;..i|nt.t_tok|
|00002200| 65 6e 3b 0a 7d 3b 0a 0a | 2f 2a 0a 20 2a 20 20 70 |en;.};..|/*. * p|
|00002210| 75 73 68 20 62 61 63 6b | 20 63 68 61 72 61 63 74 |ush back| charact|
|00002220| 65 72 0a 20 2a 2f 0a 69 | 6e 74 09 70 65 65 6b 63 |er. */.i|nt.peekc|
|00002230| 3b 0a 0a 0a 2f 2a 0a 20 | 2a 20 20 61 64 64 20 61 |;.../*. |* add a|
|00002240| 20 63 68 61 72 61 63 74 | 65 72 20 74 6f 20 74 68 | charact|er to th|
|00002250| 65 20 6f 75 74 70 75 74 | 20 6c 69 6e 65 20 62 75 |e output| line bu|
|00002260| 66 66 65 72 0a 20 2a 2f | 0a 61 64 64 74 6f 6c 69 |ffer. */|.addtoli|
|00002270| 6e 65 28 61 63 29 0a 69 | 6e 74 09 61 63 3b 0a 7b |ne(ac).i|nt.ac;.{|
|00002280| 0a 09 2f 2a 20 63 68 65 | 63 6b 20 66 6f 72 20 45 |../* che|ck for E|
|00002290| 4f 46 20 66 72 6f 6d 20 | 73 74 64 69 6f 20 2a 2f |OF from |stdio */|
|000022a0| 0a 09 69 66 20 28 61 63 | 20 3d 3d 20 2d 31 29 0a |..if (ac| == -1).|
|000022b0| 09 09 61 63 20 3d 20 30 | 20 3b 0a 09 69 66 20 28 |..ac = 0| ;..if (|
|000022c0| 69 6e 6d 6c 65 78 29 0a | 09 09 72 65 74 75 72 6e |inmlex).|..return|
|000022d0| 28 61 63 29 3b 0a 09 69 | 66 20 28 6c 69 6e 65 70 |(ac);..i|f (linep|
|000022e0| 74 72 20 3e 3d 20 6c 69 | 6e 65 6d 61 78 29 0a 09 |tr >= li|nemax)..|
|000022f0| 09 65 72 72 6f 72 28 22 | 6c 69 6e 65 20 62 75 66 |.error("|line buf|
|00002300| 66 65 72 20 6f 76 65 72 | 66 6c 6f 77 22 29 3b 0a |fer over|flow");.|
|00002310| 09 2a 6c 69 6e 65 70 74 | 72 2b 2b 20 3d 20 61 63 |.*linept|r++ = ac|
|00002320| 3b 0a 09 72 65 74 75 72 | 6e 28 61 63 29 3b 0a 7d |;..retur|n(ac);.}|
|00002330| 0a 0a 23 69 6e 63 6c 75 | 64 65 20 3c 76 61 72 61 |..#inclu|de <vara|
|00002340| 72 67 73 2e 68 3e 0a 0a | 2f 2a 0a 20 2a 20 20 70 |rgs.h>..|/*. * p|
|00002350| 75 74 20 76 61 6c 75 65 | 73 20 69 6e 20 62 75 66 |ut value|s in buf|
|00002360| 66 65 72 20 66 6f 72 20 | 6f 75 74 70 75 74 69 6e |fer for |outputin|
|00002370| 67 0a 20 2a 2f 0a 0a 2f | 2a 56 41 52 41 52 47 53 |g. */../|*VARARGS|
|00002380| 2a 2f 0a 2f 2a 41 52 47 | 53 55 53 45 44 2a 2f 0a |*/./*ARG|SUSED*/.|
|00002390| 65 6d 69 74 28 76 61 5f | 61 6c 69 73 74 29 0a 76 |emit(va_|alist).v|
|000023a0| 61 5f 64 63 6c 0a 7b 09 | 0a 09 72 65 67 69 73 74 |a_dcl.{.|..regist|
|000023b0| 65 72 20 69 6e 74 20 62 | 79 74 65 73 3b 0a 09 76 |er int b|ytes;..v|
|000023c0| 61 5f 6c 69 73 74 20 61 | 70 3b 0a 09 76 61 5f 73 |a_list a|p;..va_s|
|000023d0| 74 61 72 74 28 61 70 29 | 3b 0a 0a 09 62 79 74 65 |tart(ap)|;...byte|
|000023e0| 73 20 3d 20 76 61 5f 61 | 72 67 28 61 70 2c 69 6e |s = va_a|rg(ap,in|
|000023f0| 74 29 3b 0a 0a 09 77 68 | 69 6c 65 09 28 2d 2d 62 |t);...wh|ile.(--b|
|00002400| 79 74 65 73 20 3e 3d 20 | 30 29 0a 09 09 69 66 20 |ytes >= |0)...if |
|00002410| 28 65 6d 69 74 70 74 72 | 20 3e 3d 20 26 65 6d 69 |(emitptr| >= &emi|
|00002420| 74 62 75 66 5b 45 4d 49 | 54 42 55 46 46 45 52 53 |tbuf[EMI|TBUFFERS|
|00002430| 49 5a 45 5d 29 0a 09 09 | 09 65 72 72 6f 72 28 22 |IZE])...|.error("|
|00002440| 65 6d 69 74 20 62 75 66 | 66 65 72 20 6f 76 65 72 |emit buf|fer over|
|00002450| 66 6c 6f 77 22 29 3b 0a | 09 09 65 6c 73 65 20 7b |flow");.|..else {|
|00002460| 0a 09 09 09 2a 65 6d 69 | 74 70 74 72 2b 2b 20 3d |....*emi|tptr++ =|
|00002470| 20 76 61 5f 61 72 67 28 | 61 70 2c 69 6e 74 29 3b | va_arg(|ap,int);|
|00002480| 0a 09 09 7d 0a 09 76 61 | 5f 65 6e 64 28 61 70 29 |...}..va|_end(ap)|
|00002490| 3b 0a 7d 0a 0a 0a 65 6d | 69 74 31 28 6f 70 63 6f |;.}...em|it1(opco|
|000024a0| 64 65 2c 72 65 67 76 61 | 6c 68 2c 64 61 74 61 31 |de,regva|lh,data1|
|000024b0| 36 2c 74 79 70 65 29 0a | 69 6e 74 09 6f 70 63 6f |6,type).|int.opco|
|000024c0| 64 65 2c 72 65 67 76 61 | 6c 68 2c 64 61 74 61 31 |de,regva|lh,data1|
|000024d0| 36 2c 74 79 70 65 3b 0a | 7b 0a 09 69 66 20 28 72 |6,type;.|{..if (r|
|000024e0| 65 67 76 61 6c 68 20 26 | 20 30 78 38 30 30 30 29 |egvalh &| 0x8000)|
|000024f0| 20 7b 0a 09 09 69 66 20 | 28 74 79 70 65 20 26 20 | {...if |(type & |
|00002500| 31 20 3d 3d 20 30 20 26 | 26 20 28 64 69 73 70 20 |1 == 0 &|& (disp |
|00002510| 3e 20 31 32 37 20 7c 7c | 20 64 69 73 70 20 3c 20 |> 127 ||| disp < |
|00002520| 2d 31 32 38 29 29 0a 09 | 09 09 65 72 72 5b 76 66 |-128))..|..err[vf|
|00002530| 6c 61 67 5d 2b 2b 3b 0a | 09 09 73 77 69 74 63 68 |lag]++;.|..switch|
|00002540| 28 74 79 70 65 29 20 7b | 0a 09 09 63 61 73 65 20 |(type) {|...case |
|00002550| 30 3a 0a 09 09 09 69 66 | 20 28 6f 70 63 6f 64 65 |0:....if| (opcode|
|00002560| 20 26 20 30 78 38 30 30 | 30 29 0a 09 09 09 09 65 | & 0x800|0).....e|
|00002570| 6d 69 74 28 34 2c 20 72 | 65 67 76 61 6c 68 20 3e |mit(4, r|egvalh >|
|00002580| 3e 20 38 2c 20 6f 70 63 | 6f 64 65 20 3e 3e 20 38 |> 8, opc|ode >> 8|
|00002590| 2c 20 64 69 73 70 2c 20 | 6f 70 63 6f 64 65 29 3b |, disp, |opcode);|
|000025a0| 0a 09 09 09 65 6c 73 65 | 0a 09 09 09 09 65 6d 69 |....else|.....emi|
|000025b0| 74 28 33 2c 20 72 65 67 | 76 61 6c 68 20 3e 3e 20 |t(3, reg|valh >> |
|000025c0| 38 2c 20 6f 70 63 6f 64 | 65 2c 20 64 69 73 70 29 |8, opcod|e, disp)|
|000025d0| 3b 0a 09 09 09 62 72 65 | 61 6b 3b 0a 09 09 63 61 |;....bre|ak;...ca|
|000025e0| 73 65 20 31 3a 0a 09 09 | 09 65 6d 69 74 28 32 2c |se 1:...|.emit(2,|
|000025f0| 20 72 65 67 76 61 6c 68 | 20 3e 3e 20 38 2c 20 6f | regvalh| >> 8, o|
|00002600| 70 63 6f 64 65 29 3b 0a | 09 09 09 62 72 65 61 6b |pcode);.|...break|
|00002610| 3b 0a 09 09 63 61 73 65 | 20 32 3a 0a 09 09 09 69 |;...case| 2:....i|
|00002620| 66 20 28 64 61 74 61 31 | 36 20 3e 20 32 35 35 20 |f (data1|6 > 255 |
|00002630| 7c 7c 20 64 61 74 61 31 | 36 20 3c 20 2d 31 32 38 ||| data1|6 < -128|
|00002640| 29 0a 09 09 09 09 65 72 | 72 5b 76 66 6c 61 67 5d |).....er|r[vflag]|
|00002650| 2b 2b 3b 0a 09 09 09 65 | 6d 69 74 28 34 2c 20 72 |++;....e|mit(4, r|
|00002660| 65 67 76 61 6c 68 20 3e | 3e 20 38 2c 20 6f 70 63 |egvalh >|> 8, opc|
|00002670| 6f 64 65 2c 20 64 69 73 | 70 2c 20 64 61 74 61 31 |ode, dis|p, data1|
|00002680| 36 29 3b 0a 09 09 09 62 | 72 65 61 6b 3b 0a 09 09 |6);....b|reak;...|
|00002690| 63 61 73 65 20 35 3a 0a | 09 09 09 65 6d 69 74 28 |case 5:.|...emit(|
|000026a0| 34 2c 20 72 65 67 76 61 | 6c 68 20 3e 3e 20 38 2c |4, regva|lh >> 8,|
|000026b0| 20 6f 70 63 6f 64 65 2c | 20 64 61 74 61 31 36 2c | opcode,| data16,|
|000026c0| 20 64 61 74 61 31 36 20 | 3e 3e 20 38 29 3b 0a 09 | data16 |>> 8);..|
|000026d0| 09 7d 0a 09 7d 20 65 6c | 73 65 0a 09 09 73 77 69 |.}..} el|se...swi|
|000026e0| 74 63 68 28 74 79 70 65 | 29 20 7b 0a 09 09 63 61 |tch(type|) {...ca|
|000026f0| 73 65 20 30 3a 0a 09 09 | 09 69 66 20 28 6f 70 63 |se 0:...|.if (opc|
|00002700| 6f 64 65 20 26 20 30 31 | 30 30 30 30 30 29 0a 09 |ode & 01|00000)..|
|00002710| 09 09 09 65 6d 69 74 28 | 32 2c 20 6f 70 63 6f 64 |...emit(|2, opcod|
|00002720| 65 20 3e 3e 20 38 2c 20 | 6f 70 63 6f 64 65 29 3b |e >> 8, |opcode);|
|00002730| 0a 09 09 09 65 6c 73 65 | 0a 09 09 09 09 65 6d 69 |....else|.....emi|
|00002740| 74 28 31 2c 20 6f 70 63 | 6f 64 65 29 3b 0a 09 09 |t(1, opc|ode);...|
|00002750| 09 62 72 65 61 6b 3b 0a | 09 09 63 61 73 65 20 31 |.break;.|..case 1|
|00002760| 3a 0a 09 09 09 69 66 20 | 28 6f 70 63 6f 64 65 20 |:....if |(opcode |
|00002770| 26 20 30 31 30 30 30 30 | 30 29 0a 09 09 09 09 65 |& 010000|0).....e|
|00002780| 6d 69 74 28 32 2c 20 6f | 70 63 6f 64 65 20 3e 3e |mit(2, o|pcode >>|
|00002790| 20 38 2c 20 6f 70 63 6f | 64 65 29 3b 0a 09 09 09 | 8, opco|de);....|
|000027a0| 65 6c 73 65 0a 09 09 09 | 09 65 6d 69 74 28 31 2c |else....|.emit(1,|
|000027b0| 20 6f 70 63 6f 64 65 29 | 3b 0a 09 09 09 62 72 65 | opcode)|;....bre|
|000027c0| 61 6b 3b 0a 09 09 63 61 | 73 65 20 32 3a 0a 09 09 |ak;...ca|se 2:...|
|000027d0| 09 69 66 20 28 64 61 74 | 61 31 36 20 3e 20 32 35 |.if (dat|a16 > 25|
|000027e0| 35 20 7c 7c 20 64 61 74 | 61 31 36 20 3c 20 2d 31 |5 || dat|a16 < -1|
|000027f0| 32 38 29 0a 09 09 09 09 | 65 72 72 5b 76 66 6c 61 |28).....|err[vfla|
|00002800| 67 5d 2b 2b 3b 0a 09 09 | 09 65 6d 69 74 28 32 2c |g]++;...|.emit(2,|
|00002810| 20 6f 70 63 6f 64 65 2c | 20 64 61 74 61 31 36 29 | opcode,| data16)|
|00002820| 3b 0a 09 09 09 62 72 65 | 61 6b 3b 0a 09 09 63 61 |;....bre|ak;...ca|
|00002830| 73 65 20 33 3a 0a 09 09 | 09 69 66 20 28 64 61 74 |se 3:...|.if (dat|
|00002840| 61 31 36 20 3e 32 35 35 | 20 7c 7c 20 64 61 74 61 |a16 >255| || data|
|00002850| 31 36 20 3c 20 2d 31 32 | 38 29 0a 09 09 09 09 65 |16 < -12|8).....e|
|00002860| 72 72 5b 76 66 6c 61 67 | 5d 2b 2b 3b 0a 09 09 09 |rr[vflag|]++;....|
|00002870| 65 6d 69 74 28 32 2c 20 | 6f 70 63 6f 64 65 2c 20 |emit(2, |opcode, |
|00002880| 64 61 74 61 31 36 29 3b | 0a 09 09 09 62 72 65 61 |data16);|....brea|
|00002890| 6b 3b 0a 09 09 63 61 73 | 65 20 35 3a 0a 09 09 09 |k;...cas|e 5:....|
|000028a0| 69 66 20 28 6f 70 63 6f | 64 65 20 26 20 30 31 30 |if (opco|de & 010|
|000028b0| 30 30 30 30 29 0a 09 09 | 09 09 65 6d 69 74 28 34 |0000)...|..emit(4|
|000028c0| 2c 20 6f 70 63 6f 64 65 | 20 3e 3e 20 38 2c 20 6f |, opcode| >> 8, o|
|000028d0| 70 63 6f 64 65 2c 20 64 | 61 74 61 31 36 2c 20 64 |pcode, d|ata16, d|
|000028e0| 61 74 61 31 36 20 3e 3e | 20 38 29 3b 0a 09 09 09 |ata16 >>| 8);....|
|000028f0| 65 6c 73 65 0a 09 09 09 | 09 65 6d 69 74 28 33 2c |else....|.emit(3,|
|00002900| 20 6f 70 63 6f 64 65 2c | 20 64 61 74 61 31 36 2c | opcode,| data16,|
|00002910| 20 64 61 74 61 31 36 20 | 3e 3e 20 38 29 3b 0a 09 | data16 |>> 8);..|
|00002920| 09 7d 0a 7d 0a 0a 0a 0a | 0a 65 6d 69 74 64 61 64 |.}.}....|.emitdad|
|00002930| 28 72 70 31 2c 72 70 32 | 29 0a 69 6e 74 20 72 70 |(rp1,rp2|).int rp|
|00002940| 31 2c 72 70 32 3b 0a 7b | 0a 09 69 66 20 28 72 70 |1,rp2;.{|..if (rp|
|00002950| 31 20 26 20 30 78 38 30 | 30 30 29 0a 09 09 65 6d |1 & 0x80|00)...em|
|00002960| 69 74 28 32 2c 72 70 31 | 20 3e 3e 20 38 2c 20 72 |it(2,rp1| >> 8, r|
|00002970| 70 32 20 2b 20 39 29 3b | 0a 09 65 6c 73 65 0a 09 |p2 + 9);|..else..|
|00002980| 09 65 6d 69 74 28 31 2c | 72 70 32 20 2b 20 39 29 |.emit(1,|rp2 + 9)|
|00002990| 3b 0a 7d 0a 0a 0a 65 6d | 69 74 6a 72 28 6f 70 63 |;.}...em|itjr(opc|
|000029a0| 6f 64 65 2c 65 78 70 72 | 29 0a 69 6e 74 09 6f 70 |ode,expr|).int.op|
|000029b0| 63 6f 64 65 2c 65 78 70 | 72 3b 0a 7b 0a 09 64 69 |code,exp|r;.{..di|
|000029c0| 73 70 20 3d 20 65 78 70 | 72 20 2d 20 64 6f 6c 6c |sp = exp|r - doll|
|000029d0| 61 72 73 69 67 6e 20 2d | 20 32 3b 0a 09 69 66 20 |arsign -| 2;..if |
|000029e0| 28 64 69 73 70 20 3e 20 | 31 32 37 20 7c 7c 20 64 |(disp > |127 || d|
|000029f0| 69 73 70 20 3c 20 2d 31 | 32 38 29 0a 09 09 65 72 |isp < -1|28)...er|
|00002a00| 72 5b 76 66 6c 61 67 5d | 2b 2b 3b 0a 09 65 6d 69 |r[vflag]|++;..emi|
|00002a10| 74 28 32 2c 20 6f 70 63 | 6f 64 65 2c 20 64 69 73 |t(2, opc|ode, dis|
|00002a20| 70 29 3b 0a 7d 0a 0a 0a | 0a 0a 2f 2a 0a 20 2a 20 |p);.}...|../*. * |
|00002a30| 20 70 75 74 20 6f 75 74 | 20 61 20 62 79 74 65 20 | put out| a byte |
|00002a40| 6f 66 20 62 69 6e 61 72 | 79 20 0a 20 2a 2f 0a 70 |of binar|y . */.p|
|00002a50| 75 74 62 69 6e 28 76 29 | 0a 7b 0a 09 69 66 28 21 |utbin(v)|.{..if(!|
|00002a60| 70 61 73 73 32 20 7c 7c | 20 21 62 6f 70 74 29 20 |pass2 ||| !bopt) |
|00002a70| 72 65 74 75 72 6e 3b 0a | 09 2a 6f 75 74 62 69 6e |return;.|.*outbin|
|00002a80| 70 2b 2b 20 3d 20 76 3b | 0a 09 69 66 20 28 6f 75 |p++ = v;|..if (ou|
|00002a90| 74 62 69 6e 70 20 3e 3d | 20 6f 75 74 62 69 6e 6d |tbinp >=| outbinm|
|00002aa0| 29 20 66 6c 75 73 68 62 | 69 6e 28 29 3b 0a 7d 0a |) flushb|in();.}.|
|00002ab0| 0a 0a 0a 2f 2a 0a 20 2a | 20 20 6f 75 74 70 75 74 |.../*. *| output|
|00002ac0| 20 6f 6e 65 20 6c 69 6e | 65 20 6f 66 20 62 69 6e | one lin|e of bin|
|00002ad0| 61 72 79 20 69 6e 20 49 | 4e 54 45 4c 20 73 74 61 |ary in I|NTEL sta|
|00002ae0| 6e 64 61 72 64 20 66 6f | 72 6d 0a 20 2a 2f 0a 66 |ndard fo|rm. */.f|
|00002af0| 6c 75 73 68 62 69 6e 28 | 29 0a 7b 0a 09 72 65 67 |lushbin(|).{..reg|
|00002b00| 69 73 74 65 72 20 20 63 | 68 61 72 20 2a 70 3b 0a |ister c|har *p;.|
|00002b10| 09 72 65 67 69 73 74 65 | 72 20 63 68 65 63 6b 3b |.registe|r check;|
|00002b20| 0a 0a 09 69 66 20 28 21 | 70 61 73 73 32 20 7c 7c |...if (!|pass2 |||
|00002b30| 20 21 62 6f 70 74 29 0a | 09 09 72 65 74 75 72 6e | !bopt).|..return|
|00002b40| 3b 0a 09 6e 62 79 74 65 | 73 20 2b 3d 20 6f 75 74 |;..nbyte|s += out|
|00002b50| 62 69 6e 70 2d 6f 75 74 | 62 69 6e 3b 0a 09 69 66 |binp-out|bin;..if|
|00002b60| 20 28 63 68 65 63 6b 20 | 3d 20 6f 75 74 62 69 6e | (check |= outbin|
|00002b70| 70 2d 6f 75 74 62 69 6e | 29 20 7b 0a 09 09 70 75 |p-outbin|) {...pu|
|00002b80| 74 63 28 27 3a 27 2c 20 | 66 62 75 66 29 3b 0a 09 |tc(':', |fbuf);..|
|00002b90| 09 70 75 74 68 65 78 28 | 63 68 65 63 6b 2c 20 66 |.puthex(|check, f|
|00002ba0| 62 75 66 29 3b 0a 09 09 | 70 75 74 68 65 78 28 6f |buf);...|puthex(o|
|00002bb0| 6c 64 64 6f 6c 6c 61 72 | 3e 3e 38 2c 20 66 62 75 |lddollar|>>8, fbu|
|00002bc0| 66 29 3b 0a 09 09 70 75 | 74 68 65 78 28 6f 6c 64 |f);...pu|thex(old|
|00002bd0| 64 6f 6c 6c 61 72 2c 20 | 66 62 75 66 29 3b 0a 09 |dollar, |fbuf);..|
|00002be0| 09 70 75 74 68 65 78 28 | 30 2c 20 66 62 75 66 29 |.puthex(|0, fbuf)|
|00002bf0| 3b 0a 09 09 63 68 65 63 | 6b 20 2b 3d 20 28 6f 6c |;...chec|k += (ol|
|00002c00| 64 64 6f 6c 6c 61 72 20 | 3e 3e 20 38 29 20 2b 20 |ddollar |>> 8) + |
|00002c10| 6f 6c 64 64 6f 6c 6c 61 | 72 3b 0a 09 09 6f 6c 64 |olddolla|r;...old|
|00002c20| 64 6f 6c 6c 61 72 20 2b | 3d 20 28 6f 75 74 62 69 |dollar +|= (outbi|
|00002c30| 6e 70 2d 6f 75 74 62 69 | 6e 29 3b 0a 09 09 66 6f |np-outbi|n);...fo|
|00002c40| 72 20 28 70 3d 6f 75 74 | 62 69 6e 3b 20 70 3c 6f |r (p=out|bin; p<o|
|00002c50| 75 74 62 69 6e 70 3b 20 | 70 2b 2b 29 20 7b 0a 09 |utbinp; |p++) {..|
|00002c60| 09 09 70 75 74 68 65 78 | 28 2a 70 2c 20 66 62 75 |..puthex|(*p, fbu|
|00002c70| 66 29 3b 0a 09 09 09 63 | 68 65 63 6b 20 2b 3d 20 |f);....c|heck += |
|00002c80| 2a 70 3b 0a 09 09 7d 0a | 09 09 70 75 74 68 65 78 |*p;...}.|..puthex|
|00002c90| 28 32 35 36 2d 63 68 65 | 63 6b 2c 20 66 62 75 66 |(256-che|ck, fbuf|
|00002ca0| 29 3b 0a 09 09 70 75 74 | 63 28 27 5c 6e 27 2c 20 |);...put|c('\n', |
|00002cb0| 66 62 75 66 29 3b 0a 09 | 09 6f 75 74 62 69 6e 70 |fbuf);..|.outbinp|
|00002cc0| 20 3d 20 6f 75 74 62 69 | 6e 3b 0a 09 7d 0a 7d 0a | = outbi|n;..}.}.|
|00002cd0| 0a 0a 0a 2f 2a 0a 20 2a | 20 20 70 75 74 20 6f 75 |.../*. *| put ou|
|00002ce0| 74 20 6f 6e 65 20 62 79 | 74 65 20 6f 66 20 68 65 |t one by|te of he|
|00002cf0| 78 0a 20 2a 2f 0a 70 75 | 74 68 65 78 28 62 79 74 |x. */.pu|thex(byt|
|00002d00| 65 2c 20 62 75 66 29 0a | 63 68 61 72 09 62 79 74 |e, buf).|char.byt|
|00002d10| 65 3b 0a 46 49 4c 45 09 | 2a 62 75 66 3b 0a 7b 0a |e;.FILE.|*buf;.{.|
|00002d20| 09 70 75 74 63 28 68 65 | 78 61 64 65 63 5b 28 62 |.putc(he|xadec[(b|
|00002d30| 79 74 65 20 3e 3e 20 34 | 29 20 26 20 30 31 37 5d |yte >> 4|) & 017]|
|00002d40| 2c 20 62 75 66 29 3b 0a | 09 70 75 74 63 28 68 65 |, buf);.|.putc(he|
|00002d50| 78 61 64 65 63 5b 62 79 | 74 65 20 26 20 30 31 37 |xadec[by|te & 017|
|00002d60| 5d 2c 20 62 75 66 29 3b | 0a 7d 0a 0a 2f 2a 0a 20 |], buf);|.}../*. |
|00002d70| 2a 20 20 70 75 74 20 6f | 75 74 20 61 20 6c 69 6e |* put o|ut a lin|
|00002d80| 65 20 6f 66 20 6f 75 74 | 70 75 74 20 2d 2d 20 61 |e of out|put -- a|
|00002d90| 6c 73 6f 20 70 75 74 20 | 6f 75 74 20 62 69 6e 61 |lso put |out bina|
|00002da0| 72 79 0a 20 2a 2f 0a 6c | 69 73 74 28 6f 70 74 61 |ry. */.l|ist(opta|
|00002db0| 72 67 29 0a 69 6e 74 09 | 6f 70 74 61 72 67 3b 0a |rg).int.|optarg;.|
|00002dc0| 7b 0a 09 72 65 67 69 73 | 74 65 72 20 63 68 61 72 |{..regis|ter char|
|00002dd0| 20 2a 09 70 3b 0a 09 72 | 65 67 69 73 74 65 72 20 | *.p;..r|egister |
|00002de0| 69 6e 74 09 69 3b 0a 09 | 69 6e 74 20 20 6c 73 74 |int.i;..|int lst|
|00002df0| 3b 0a 0a 09 69 66 20 28 | 21 65 78 70 70 74 72 29 |;...if (|!expptr)|
|00002e00| 0a 09 09 6c 69 6e 65 63 | 6e 74 2b 2b 3b 0a 09 61 |...linec|nt++;..a|
|00002e10| 64 64 74 6f 6c 69 6e 65 | 28 27 5c 30 27 29 3b 0a |ddtoline|('\0');.|
|00002e20| 09 69 66 20 28 70 61 73 | 73 32 29 20 7b 0a 09 09 |.if (pas|s2) {...|
|00002e30| 6c 73 74 20 3d 20 69 66 | 6c 69 73 74 28 29 3b 0a |lst = if|list();.|
|00002e40| 09 09 69 66 20 28 6c 73 | 74 29 20 7b 0a 09 09 09 |..if (ls|t) {....|
|00002e50| 6c 69 6e 65 6f 75 74 28 | 29 3b 0a 09 09 09 69 66 |lineout(|);....if|
|00002e60| 20 28 6e 6f 70 74 29 0a | 09 09 09 09 66 70 72 69 | (nopt).|....fpri|
|00002e70| 6e 74 66 28 66 6f 75 74 | 2c 20 22 25 34 64 3a 5c |ntf(fout|, "%4d:\|
|00002e80| 74 22 2c 20 6c 69 6e 65 | 69 6e 5b 6e 6f 77 5f 69 |t", line|in[now_i|
|00002e90| 6e 5d 29 3b 0a 09 09 09 | 70 75 74 68 65 78 28 6f |n]);....|puthex(o|
|00002ea0| 70 74 61 72 67 20 3e 3e | 20 38 2c 20 66 6f 75 74 |ptarg >>| 8, fout|
|00002eb0| 29 3b 0a 09 09 09 70 75 | 74 68 65 78 28 6f 70 74 |);....pu|thex(opt|
|00002ec0| 61 72 67 2c 20 66 6f 75 | 74 29 3b 0a 09 09 09 66 |arg, fou|t);....f|
|00002ed0| 70 75 74 73 28 22 20 20 | 22 2c 20 66 6f 75 74 29 |puts(" |", fout)|
|00002ee0| 3b 0a 09 09 09 66 6f 72 | 20 28 70 20 3d 20 65 6d |;....for| (p = em|
|00002ef0| 69 74 62 75 66 3b 20 28 | 70 20 3c 20 65 6d 69 74 |itbuf; (|p < emit|
|00002f00| 70 74 72 29 20 26 26 20 | 28 70 20 2d 20 65 6d 69 |ptr) && |(p - emi|
|00002f10| 74 62 75 66 20 3c 20 34 | 29 3b 20 70 2b 2b 29 20 |tbuf < 4|); p++) |
|00002f20| 7b 0a 09 09 09 09 70 75 | 74 68 65 78 28 2a 70 2c |{.....pu|thex(*p,|
|00002f30| 20 66 6f 75 74 29 3b 0a | 09 09 09 7d 0a 09 09 09 | fout);.|...}....|
|00002f40| 66 6f 72 20 28 69 20 3d | 20 34 20 2d 20 28 70 2d |for (i =| 4 - (p-|
|00002f50| 65 6d 69 74 62 75 66 29 | 3b 20 69 20 3e 20 30 3b |emitbuf)|; i > 0;|
|00002f60| 20 69 2d 2d 29 0a 09 09 | 09 09 66 70 75 74 73 28 | i--)...|..fputs(|
|00002f70| 22 20 20 22 2c 20 66 6f | 75 74 29 3b 0a 09 09 09 |" ", fo|ut);....|
|00002f80| 70 75 74 63 28 27 5c 74 | 27 2c 20 66 6f 75 74 29 |putc('\t|', fout)|
|00002f90| 3b 0a 09 09 09 66 70 75 | 74 73 28 6c 69 6e 65 62 |;....fpu|ts(lineb|
|00002fa0| 75 66 2c 20 66 6f 75 74 | 29 3b 0a 09 09 7d 0a 0a |uf, fout|);...}..|
|00002fb0| 09 09 69 66 20 28 62 6f | 70 74 29 20 7b 0a 09 09 |..if (bo|pt) {...|
|00002fc0| 09 66 6f 72 20 28 70 20 | 3d 20 65 6d 69 74 62 75 |.for (p |= emitbu|
|00002fd0| 66 3b 20 70 20 3c 20 65 | 6d 69 74 70 74 72 3b 20 |f; p < e|mitptr; |
|00002fe0| 70 2b 2b 29 0a 09 09 09 | 09 70 75 74 62 69 6e 28 |p++)....|.putbin(|
|00002ff0| 2a 70 29 3b 0a 09 09 7d | 0a 0a 0a 09 09 70 20 3d |*p);...}|.....p =|
|00003000| 20 65 6d 69 74 62 75 66 | 2b 34 3b 0a 09 09 77 68 | emitbuf|+4;...wh|
|00003010| 69 6c 65 20 28 6c 73 74 | 20 26 26 20 67 6f 70 74 |ile (lst| && gopt|
|00003020| 20 26 26 20 70 20 3c 20 | 65 6d 69 74 70 74 72 29 | && p < |emitptr)|
|00003030| 20 7b 0a 09 09 09 6c 69 | 6e 65 6f 75 74 28 29 3b | {....li|neout();|
|00003040| 0a 09 09 09 69 66 20 28 | 6e 6f 70 74 29 20 70 75 |....if (|nopt) pu|
|00003050| 74 63 28 27 5c 74 27 2c | 20 66 6f 75 74 29 3b 0a |tc('\t',| fout);.|
|00003060| 09 09 09 66 70 75 74 73 | 28 22 20 20 20 20 20 20 |...fputs|(" |
|00003070| 22 2c 20 66 6f 75 74 29 | 3b 0a 09 09 09 66 6f 72 |", fout)|;....for|
|00003080| 20 28 69 20 3d 20 30 3b | 20 28 69 20 3c 20 34 29 | (i = 0;| (i < 4)|
|00003090| 20 26 26 20 28 70 20 3c | 20 65 6d 69 74 70 74 72 | && (p <| emitptr|
|000030a0| 29 3b 69 2b 2b 29 20 7b | 0a 09 09 09 09 70 75 74 |);i++) {|.....put|
|000030b0| 68 65 78 28 2a 70 2c 20 | 66 6f 75 74 29 3b 0a 09 |hex(*p, |fout);..|
|000030c0| 09 09 09 70 2b 2b 3b 0a | 09 09 09 7d 0a 09 09 09 |...p++;.|...}....|
|000030d0| 70 75 74 63 28 27 5c 6e | 27 2c 20 66 6f 75 74 29 |putc('\n|', fout)|
|000030e0| 3b 0a 09 09 7d 0a 0a 0a | 09 09 6c 73 74 65 72 72 |;...}...|..lsterr|
|000030f0| 32 28 6c 73 74 29 3b 0a | 09 7d 20 65 6c 73 65 0a |2(lst);.|.} else.|
|00003100| 09 09 6c 73 74 65 72 72 | 31 28 29 3b 0a 09 64 6f |..lsterr|1();..do|
|00003110| 6c 6c 61 72 73 69 67 6e | 20 2b 3d 20 65 6d 69 74 |llarsign| += emit|
|00003120| 70 74 72 20 2d 20 65 6d | 69 74 62 75 66 3b 0a 09 |ptr - em|itbuf;..|
|00003130| 65 6d 69 74 70 74 72 20 | 3d 20 65 6d 69 74 62 75 |emitptr |= emitbu|
|00003140| 66 3b 0a 09 6c 69 6e 65 | 70 74 72 20 3d 20 6c 69 |f;..line|ptr = li|
|00003150| 6e 65 62 75 66 3b 0a 7d | 0a 0a 0a 0a 2f 2a 0a 20 |nebuf;.}|..../*. |
|00003160| 2a 20 20 6b 65 65 70 20 | 74 72 61 63 6b 20 6f 66 |* keep |track of|
|00003170| 20 6c 69 6e 65 20 6e 75 | 6d 62 65 72 73 20 61 6e | line nu|mbers an|
|00003180| 64 20 70 75 74 20 6f 75 | 74 20 68 65 61 64 65 72 |d put ou|t header|
|00003190| 73 20 61 73 20 6e 65 63 | 65 73 73 61 72 79 0a 20 |s as nec|essary. |
|000031a0| 2a 2f 0a 6c 69 6e 65 6f | 75 74 28 29 0a 7b 0a 09 |*/.lineo|ut().{..|
|000031b0| 69 66 20 28 6c 69 6e 65 | 20 3d 3d 20 36 30 29 20 |if (line| == 60) |
|000031c0| 7b 0a 09 09 69 66 20 28 | 70 6f 70 74 29 0a 09 09 |{...if (|popt)...|
|000031d0| 09 70 75 74 63 28 27 5c | 30 31 34 27 2c 20 66 6f |.putc('\|014', fo|
|000031e0| 75 74 29 3b 09 2f 2a 20 | 73 65 6e 64 20 74 68 65 |ut);./* |send the|
|000031f0| 20 66 6f 72 6d 20 66 65 | 65 64 20 2a 2f 0a 09 09 | form fe|ed */...|
|00003200| 65 6c 73 65 0a 09 09 09 | 66 70 75 74 73 28 22 5c |else....|fputs("\|
|00003210| 6e 5c 6e 5c 6e 5c 6e 5c | 6e 22 2c 20 66 6f 75 74 |n\n\n\n\|n", fout|
|00003220| 29 3b 0a 09 09 6c 69 6e | 65 20 3d 20 30 3b 0a 09 |);...lin|e = 0;..|
|00003230| 7d 0a 09 69 66 20 28 6c | 69 6e 65 20 3d 3d 20 30 |}..if (l|ine == 0|
|00003240| 29 20 7b 0a 09 09 66 70 | 72 69 6e 74 66 28 66 6f |) {...fp|rintf(fo|
|00003250| 75 74 2c 20 22 5c 6e 5c | 6e 25 73 20 25 73 5c 74 |ut, "\n\|n%s %s\t|
|00003260| 25 73 5c 74 20 50 61 67 | 65 20 25 64 5c 6e 5c 6e |%s\t Pag|e %d\n\n|
|00003270| 5c 6e 22 2c 0a 09 09 09 | 26 74 69 6d 70 5b 34 5d |\n",....|&timp[4]|
|00003280| 2c 20 26 74 69 6d 70 5b | 32 30 5d 2c 20 74 69 74 |, &timp[|20], tit|
|00003290| 6c 65 2c 20 70 61 67 65 | 2b 2b 29 3b 0a 09 09 6c |le, page|++);...l|
|000032a0| 69 6e 65 20 3d 20 34 3b | 0a 09 7d 0a 09 6c 69 6e |ine = 4;|..}..lin|
|000032b0| 65 2b 2b 3b 0a 7d 0a 0a | 0a 2f 2a 0a 20 2a 20 20 |e++;.}..|./*. * |
|000032c0| 63 61 75 73 65 20 61 20 | 70 61 67 65 20 65 6a 65 |cause a |page eje|
|000032d0| 63 74 0a 20 2a 2f 0a 65 | 6a 65 63 74 28 29 0a 7b |ct. */.e|ject().{|
|000032e0| 0a 09 69 66 20 28 70 61 | 73 73 32 20 26 26 20 69 |..if (pa|ss2 && i|
|000032f0| 66 6c 69 73 74 28 29 29 | 20 7b 0a 09 09 69 66 20 |flist())| {...if |
|00003300| 28 70 6f 70 74 29 20 7b | 0a 09 09 09 70 75 74 63 |(popt) {|....putc|
|00003310| 28 27 5c 30 31 34 27 2c | 20 66 6f 75 74 29 3b 09 |('\014',| fout);.|
|00003320| 2f 2a 20 73 65 6e 64 20 | 74 68 65 20 66 6f 72 6d |/* send |the form|
|00003330| 20 66 65 65 64 20 2a 2f | 0a 09 09 7d 20 65 6c 73 | feed */|...} els|
|00003340| 65 20 7b 0a 09 09 09 77 | 68 69 6c 65 20 28 6c 69 |e {....w|hile (li|
|00003350| 6e 65 20 3c 20 36 35 29 | 20 7b 0a 09 09 09 09 6c |ne < 65)| {.....l|
|00003360| 69 6e 65 2b 2b 3b 0a 09 | 09 09 09 70 75 74 63 28 |ine++;..|...putc(|
|00003370| 27 5c 6e 27 2c 20 66 6f | 75 74 29 3b 0a 09 09 09 |'\n', fo|ut);....|
|00003380| 7d 0a 09 09 7d 0a 09 7d | 0a 09 6c 69 6e 65 20 3d |}...}..}|..line =|
|00003390| 20 30 3b 0a 7d 0a 0a 0a | 2f 2a 0a 20 2a 20 20 73 | 0;.}...|/*. * s|
|000033a0| 70 61 63 65 20 6e 20 6c | 69 6e 65 73 20 6f 6e 20 |pace n l|ines on |
|000033b0| 74 68 65 20 6c 69 73 74 | 20 66 69 6c 65 0a 20 2a |the list| file. *|
|000033c0| 2f 0a 73 70 61 63 65 28 | 6e 29 0a 7b 0a 09 69 6e |/.space(|n).{..in|
|000033d0| 74 09 69 20 3b 0a 09 69 | 66 20 28 70 61 73 73 32 |t.i ;..i|f (pass2|
|000033e0| 20 26 26 20 69 66 6c 69 | 73 74 28 29 29 0a 09 09 | && ifli|st())...|
|000033f0| 66 6f 72 20 28 69 20 3d | 20 30 3b 20 69 3c 6e 3b |for (i =| 0; i<n;|
|00003400| 20 69 2b 2b 29 20 7b 0a | 09 09 09 6c 69 6e 65 6f | i++) {.|...lineo|
|00003410| 75 74 28 29 3b 0a 09 09 | 09 70 75 74 63 28 27 5c |ut();...|.putc('\|
|00003420| 6e 27 2c 20 66 6f 75 74 | 29 3b 0a 09 09 7d 0a 7d |n', fout|);...}.}|
|00003430| 0a 0a 0a 2f 2a 0a 20 2a | 20 20 45 72 72 6f 72 20 |.../*. *| Error |
|00003440| 68 61 6e 64 6c 69 6e 67 | 20 2d 20 70 61 73 73 20 |handling| - pass |
|00003450| 31 0a 20 2a 2f 0a 6c 73 | 74 65 72 72 31 28 29 20 |1. */.ls|terr1() |
|00003460| 7b 0a 09 72 65 67 69 73 | 74 65 72 20 69 6e 74 20 |{..regis|ter int |
|00003470| 69 3b 0a 09 69 66 20 28 | 74 6f 70 74 29 0a 09 09 |i;..if (|topt)...|
|00003480| 66 6f 72 20 28 69 20 3d | 20 30 3b 20 69 20 3c 3d |for (i =| 0; i <=|
|00003490| 20 34 3b 20 69 2b 2b 29 | 0a 09 09 09 69 66 20 28 | 4; i++)|....if (|
|000034a0| 65 72 72 5b 69 5d 29 20 | 7b 0a 09 09 09 09 65 72 |err[i]) |{.....er|
|000034b0| 72 6f 72 70 72 74 28 69 | 29 3b 0a 09 09 09 09 65 |rorprt(i|);.....e|
|000034c0| 72 72 5b 69 5d 20 3d 20 | 30 3b 0a 09 09 09 7d 0a |rr[i] = |0;....}.|
|000034d0| 7d 0a 0a 0a 2f 2a 0a 20 | 2a 20 20 45 72 72 6f 72 |}.../*. |* Error|
|000034e0| 20 68 61 6e 64 6c 69 6e | 67 20 2d 20 70 61 73 73 | handlin|g - pass|
|000034f0| 20 32 2e 0a 20 2a 2f 0a | 6c 73 74 65 72 72 32 28 | 2.. */.|lsterr2(|
|00003500| 6c 73 74 29 0a 69 6e 74 | 09 6c 73 74 3b 0a 7b 0a |lst).int|.lst;.{.|
|00003510| 09 72 65 67 69 73 74 65 | 72 20 69 6e 74 20 69 3b |.registe|r int i;|
|00003520| 0a 09 66 6f 72 20 28 69 | 3d 30 3b 20 69 3c 46 4c |..for (i|=0; i<FL|
|00003530| 41 47 53 3b 20 69 2b 2b | 29 0a 09 09 69 66 20 28 |AGS; i++|)...if (|
|00003540| 65 72 72 5b 69 5d 29 20 | 7b 0a 09 09 09 69 66 20 |err[i]) |{....if |
|00003550| 28 6c 73 74 29 20 7b 0a | 09 09 09 09 6c 69 6e 65 |(lst) {.|....line|
|00003560| 6f 75 74 28 29 3b 0a 09 | 09 09 09 70 75 74 63 28 |out();..|...putc(|
|00003570| 65 72 72 6c 65 74 5b 69 | 5d 2c 20 66 6f 75 74 29 |errlet[i|], fout)|
|00003580| 3b 0a 09 09 09 09 70 75 | 74 63 28 27 5c 6e 27 2c |;.....pu|tc('\n',|
|00003590| 20 66 6f 75 74 29 3b 0a | 09 09 09 7d 0a 09 09 09 | fout);.|...}....|
|000035a0| 65 72 72 5b 69 5d 20 3d | 20 30 3b 0a 09 09 09 6b |err[i] =| 0;....k|
|000035b0| 65 65 70 65 72 72 5b 69 | 5d 2b 2b 3b 0a 09 09 09 |eeperr[i|]++;....|
|000035c0| 69 66 20 28 69 20 3e 20 | 34 20 26 26 20 74 6f 70 |if (i > |4 && top|
|000035d0| 74 29 0a 09 09 09 09 65 | 72 72 6f 72 70 72 74 28 |t).....e|rrorprt(|
|000035e0| 69 29 3b 0a 09 09 7d 0a | 0a 09 66 66 6c 75 73 68 |i);...}.|..fflush|
|000035f0| 28 66 6f 75 74 29 3b 09 | 2f 2a 74 6f 20 61 76 6f |(fout);.|/*to avo|
|00003600| 69 64 20 70 75 74 63 28 | 68 61 72 29 20 6d 69 78 |id putc(|har) mix|
|00003610| 20 62 75 67 2a 2f 0a 7d | 0a 0a 2f 2a 0a 20 2a 20 | bug*/.}|../*. * |
|00003620| 20 70 72 69 6e 74 20 64 | 69 61 67 6e 6f 73 74 69 | print d|iagnosti|
|00003630| 63 20 74 6f 20 65 72 72 | 6f 72 20 74 65 72 6d 69 |c to err|or termi|
|00003640| 6e 61 6c 0a 20 2a 2f 0a | 65 72 72 6f 72 70 72 74 |nal. */.|errorprt|
|00003650| 28 65 72 72 6e 75 6d 29 | 0a 69 6e 74 09 65 72 72 |(errnum)|.int.err|
|00003660| 6e 75 6d 3b 0a 7b 0a 09 | 66 70 72 69 6e 74 66 28 |num;.{..|fprintf(|
|00003670| 73 74 64 65 72 72 2c 22 | 25 64 3a 20 25 73 20 65 |stderr,"|%d: %s e|
|00003680| 72 72 6f 72 5c 6e 25 73 | 5c 6e 22 2c 0a 09 09 6c |rror\n%s|\n",...l|
|00003690| 69 6e 65 63 6e 74 2c 20 | 65 72 72 6e 61 6d 65 5b |inecnt, |errname[|
|000036a0| 65 72 72 6e 75 6d 5d 2c | 20 6c 69 6e 65 62 75 66 |errnum],| linebuf|
|000036b0| 29 20 3b 0a 09 66 66 6c | 75 73 68 28 73 74 64 65 |) ;..ffl|ush(stde|
|000036c0| 72 72 29 20 3b 0a 09 72 | 65 74 75 72 6e 20 3b 0a |rr) ;..r|eturn ;.|
|000036d0| 7d 0a 0a 0a 2f 2a 0a 20 | 2a 20 20 6c 69 73 74 20 |}.../*. |* list |
|000036e0| 77 69 74 68 6f 75 74 20 | 61 64 64 72 65 73 73 20 |without |address |
|000036f0| 2d 2d 20 66 6f 72 20 63 | 6f 6d 6d 65 6e 74 73 20 |-- for c|omments |
|00003700| 61 6e 64 20 69 66 20 73 | 6b 69 70 70 65 64 20 6c |and if s|kipped l|
|00003710| 69 6e 65 73 0a 20 2a 2f | 0a 6c 69 73 74 31 28 29 |ines. */|.list1()|
|00003720| 0a 7b 0a 09 69 6e 74 20 | 6c 73 74 3b 0a 0a 09 61 |.{..int |lst;...a|
|00003730| 64 64 74 6f 6c 69 6e 65 | 28 27 5c 30 27 29 3b 0a |ddtoline|('\0');.|
|00003740| 09 6c 69 6e 65 70 74 72 | 20 3d 20 6c 69 6e 65 62 |.lineptr| = lineb|
|00003750| 75 66 3b 0a 09 69 66 20 | 28 21 65 78 70 70 74 72 |uf;..if |(!expptr|
|00003760| 29 20 6c 69 6e 65 63 6e | 74 2b 2b 3b 0a 09 69 66 |) linecn|t++;..if|
|00003770| 20 28 70 61 73 73 32 29 | 0a 09 09 69 66 20 28 6c | (pass2)|...if (l|
|00003780| 73 74 20 3d 20 69 66 6c | 69 73 74 28 29 29 20 7b |st = ifl|ist()) {|
|00003790| 0a 09 09 09 6c 69 6e 65 | 6f 75 74 28 29 3b 0a 09 |....line|out();..|
|000037a0| 09 09 69 66 20 28 6e 6f | 70 74 29 0a 09 09 09 09 |..if (no|pt).....|
|000037b0| 66 70 72 69 6e 74 66 28 | 66 6f 75 74 2c 20 22 25 |fprintf(|fout, "%|
|000037c0| 34 64 3a 5c 74 22 2c 20 | 6c 69 6e 65 69 6e 5b 6e |4d:\t", |linein[n|
|000037d0| 6f 77 5f 69 6e 5d 29 3b | 0a 09 09 09 66 70 72 69 |ow_in]);|....fpri|
|000037e0| 6e 74 66 28 66 6f 75 74 | 2c 20 22 5c 74 5c 74 25 |ntf(fout|, "\t\t%|
|000037f0| 73 22 2c 20 6c 69 6e 65 | 62 75 66 29 3b 0a 09 09 |s", line|buf);...|
|00003800| 09 6c 73 74 65 72 72 32 | 28 6c 73 74 29 3b 0a 09 |.lsterr2|(lst);..|
|00003810| 09 7d 0a 09 65 6c 73 65 | 0a 09 09 6c 73 74 65 72 |.}..else|...lster|
|00003820| 72 31 28 29 3b 0a 7d 0a | 0a 0a 2f 2a 0a 20 2a 20 |r1();.}.|../*. * |
|00003830| 20 73 65 65 20 69 66 20 | 6c 69 73 74 69 6e 67 20 | see if |listing |
|00003840| 69 73 20 64 65 73 69 72 | 65 64 0a 20 2a 2f 0a 69 |is desir|ed. */.i|
|00003850| 66 6c 69 73 74 28 29 0a | 7b 0a 09 72 65 67 69 73 |flist().|{..regis|
|00003860| 74 65 72 20 20 69 2c 20 | 6a 3b 0a 0a 09 69 66 20 |ter i, |j;...if |
|00003870| 28 6c 73 74 6f 6e 29 0a | 09 09 72 65 74 75 72 6e |(lston).|..return|
|00003880| 28 31 29 20 3b 0a 09 69 | 66 20 28 6c 6f 70 74 29 |(1) ;..i|f (lopt)|
|00003890| 0a 09 09 72 65 74 75 72 | 6e 28 30 29 3b 0a 09 69 |...retur|n(0);..i|
|000038a0| 66 20 28 2a 69 66 70 74 | 72 20 26 26 20 21 66 6f |f (*ifpt|r && !fo|
|000038b0| 70 74 29 0a 09 09 72 65 | 74 75 72 6e 28 30 29 3b |pt)...re|turn(0);|
|000038c0| 0a 09 69 66 20 28 21 6c | 73 74 6f 66 66 20 26 26 |..if (!l|stoff &&|
|000038d0| 20 21 65 78 70 70 74 72 | 29 0a 09 09 72 65 74 75 | !expptr|)...retu|
|000038e0| 72 6e 28 31 29 3b 0a 09 | 6a 20 3d 20 30 3b 0a 09 |rn(1);..|j = 0;..|
|000038f0| 66 6f 72 20 28 69 3d 30 | 3b 20 69 3c 46 4c 41 47 |for (i=0|; i<FLAG|
|00003900| 53 3b 20 69 2b 2b 29 0a | 09 09 69 66 20 28 65 72 |S; i++).|..if (er|
|00003910| 72 5b 69 5d 29 0a 09 09 | 09 6a 2b 2b 3b 0a 09 69 |r[i])...|.j++;..i|
|00003920| 66 20 28 65 78 70 70 74 | 72 29 0a 09 09 72 65 74 |f (exppt|r)...ret|
|00003930| 75 72 6e 28 6d 6f 70 74 | 20 7c 7c 20 6a 29 3b 0a |urn(mopt| || j);.|
|00003940| 09 69 66 20 28 65 6f 70 | 74 20 26 26 20 6a 29 0a |.if (eop|t && j).|
|00003950| 09 09 72 65 74 75 72 6e | 28 31 29 3b 0a 09 72 65 |..return|(1);..re|
|00003960| 74 75 72 6e 28 30 29 3b | 0a 7d 0a 0a 0a 25 7d 0a |turn(0);|.}...%}.|
|00003970| 0a 25 75 6e 69 6f 6e 09 | 7b 0a 09 73 74 72 75 63 |.%union.|{..struc|
|00003980| 74 20 69 74 65 6d 20 2a | 69 74 65 6d 70 74 72 3b |t item *|itemptr;|
|00003990| 0a 09 69 6e 74 20 69 76 | 61 6c 3b 0a 09 63 68 61 |..int iv|al;..cha|
|000039a0| 72 20 2a 63 76 61 6c 3b | 0a 09 7d 0a 0a 25 74 6f |r *cval;|..}..%to|
|000039b0| 6b 65 6e 20 3c 63 76 61 | 6c 3e 20 53 54 52 49 4e |ken <cva|l> STRIN|
|000039c0| 47 0a 25 74 6f 6b 65 6e | 20 3c 69 74 65 6d 70 74 |G.%token| <itempt|
|000039d0| 72 3e 20 4e 4f 4f 50 45 | 52 41 4e 44 0a 25 74 6f |r> NOOPE|RAND.%to|
|000039e0| 6b 65 6e 20 3c 69 74 65 | 6d 70 74 72 3e 20 41 52 |ken <ite|mptr> AR|
|000039f0| 49 54 48 43 0a 25 74 6f | 6b 65 6e 20 41 44 44 0a |ITHC.%to|ken ADD.|
|00003a00| 25 74 6f 6b 65 6e 20 3c | 69 74 65 6d 70 74 72 3e |%token <|itemptr>|
|00003a10| 20 4c 4f 47 49 43 41 4c | 0a 25 74 6f 6b 65 6e 20 | LOGICAL|.%token |
|00003a20| 3c 69 74 65 6d 70 74 72 | 3e 20 42 49 54 0a 25 74 |<itemptr|> BIT.%t|
|00003a30| 6f 6b 65 6e 20 43 41 4c | 4c 0a 25 74 6f 6b 65 6e |oken CAL|L.%token|
|00003a40| 20 3c 69 74 65 6d 70 74 | 72 3e 20 49 4e 43 44 45 | <itempt|r> INCDE|
|00003a50| 43 0a 25 74 6f 6b 65 6e | 20 3c 69 74 65 6d 70 74 |C.%token| <itempt|
|00003a60| 72 3e 20 44 4a 4e 5a 0a | 25 74 6f 6b 65 6e 20 45 |r> DJNZ.|%token E|
|00003a70| 58 0a 25 74 6f 6b 65 6e | 20 3c 69 74 65 6d 70 74 |X.%token| <itempt|
|00003a80| 72 3e 20 49 4d 0a 25 74 | 6f 6b 65 6e 20 50 48 41 |r> IM.%t|oken PHA|
|00003a90| 53 45 0a 25 74 6f 6b 65 | 6e 20 44 45 50 48 41 53 |SE.%toke|n DEPHAS|
|00003aa0| 45 0a 25 74 6f 6b 65 6e | 20 3c 69 74 65 6d 70 74 |E.%token| <itempt|
|00003ab0| 72 3e 20 49 4e 0a 25 74 | 6f 6b 65 6e 20 4a 50 0a |r> IN.%t|oken JP.|
|00003ac0| 25 74 6f 6b 65 6e 20 3c | 69 74 65 6d 70 74 72 3e |%token <|itemptr>|
|00003ad0| 20 4a 52 0a 25 74 6f 6b | 65 6e 20 4c 44 0a 25 74 | JR.%tok|en LD.%t|
|00003ae0| 6f 6b 65 6e 20 3c 69 74 | 65 6d 70 74 72 3e 20 4f |oken <it|emptr> O|
|00003af0| 55 54 0a 25 74 6f 6b 65 | 6e 20 3c 69 74 65 6d 70 |UT.%toke|n <itemp|
|00003b00| 74 72 3e 20 50 55 53 48 | 50 4f 50 0a 25 74 6f 6b |tr> PUSH|POP.%tok|
|00003b10| 65 6e 20 3c 69 74 65 6d | 70 74 72 3e 20 52 45 54 |en <item|ptr> RET|
|00003b20| 0a 25 74 6f 6b 65 6e 20 | 3c 69 74 65 6d 70 74 72 |.%token |<itemptr|
|00003b30| 3e 20 53 48 49 46 54 0a | 25 74 6f 6b 65 6e 20 3c |> SHIFT.|%token <|
|00003b40| 69 74 65 6d 70 74 72 3e | 20 52 53 54 0a 25 74 6f |itemptr>| RST.%to|
|00003b50| 6b 65 6e 20 3c 69 74 65 | 6d 70 74 72 3e 20 52 45 |ken <ite|mptr> RE|
|00003b60| 47 4e 41 4d 45 0a 25 74 | 6f 6b 65 6e 20 3c 69 74 |GNAME.%t|oken <it|
|00003b70| 65 6d 70 74 72 3e 20 41 | 43 43 0a 25 74 6f 6b 65 |emptr> A|CC.%toke|
|00003b80| 6e 20 3c 69 74 65 6d 70 | 74 72 3e 20 43 0a 25 74 |n <itemp|tr> C.%t|
|00003b90| 6f 6b 65 6e 20 3c 69 74 | 65 6d 70 74 72 3e 20 52 |oken <it|emptr> R|
|00003ba0| 50 0a 25 74 6f 6b 65 6e | 20 3c 69 74 65 6d 70 74 |P.%token| <itempt|
|00003bb0| 72 3e 20 48 4c 0a 25 74 | 6f 6b 65 6e 20 3c 69 74 |r> HL.%t|oken <it|
|00003bc0| 65 6d 70 74 72 3e 20 49 | 4e 44 45 58 0a 25 74 6f |emptr> I|NDEX.%to|
|00003bd0| 6b 65 6e 20 3c 69 74 65 | 6d 70 74 72 3e 20 41 46 |ken <ite|mptr> AF|
|00003be0| 0a 25 74 6f 6b 65 6e 20 | 3c 69 74 65 6d 70 74 72 |.%token |<itemptr|
|00003bf0| 3e 20 53 50 0a 25 74 6f | 6b 65 6e 20 3c 69 74 65 |> SP.%to|ken <ite|
|00003c00| 6d 70 74 72 3e 20 4d 49 | 53 43 52 45 47 0a 25 74 |mptr> MI|SCREG.%t|
|00003c10| 6f 6b 65 6e 20 46 0a 25 | 74 6f 6b 65 6e 20 3c 69 |oken F.%|token <i|
|00003c20| 74 65 6d 70 74 72 3e 20 | 43 4f 4e 44 0a 25 74 6f |temptr> |COND.%to|
|00003c30| 6b 65 6e 20 3c 69 74 65 | 6d 70 74 72 3e 20 53 50 |ken <ite|mptr> SP|
|00003c40| 43 4f 4e 44 0a 25 74 6f | 6b 65 6e 20 3c 69 76 61 |COND.%to|ken <iva|
|00003c50| 6c 3e 20 4e 55 4d 42 45 | 52 0a 25 74 6f 6b 65 6e |l> NUMBE|R.%token|
|00003c60| 20 3c 69 74 65 6d 70 74 | 72 3e 20 55 4e 44 45 43 | <itempt|r> UNDEC|
|00003c70| 4c 41 52 45 44 0a 25 74 | 6f 6b 65 6e 20 45 4e 44 |LARED.%t|oken END|
|00003c80| 0a 25 74 6f 6b 65 6e 20 | 4f 52 47 0a 25 74 6f 6b |.%token |ORG.%tok|
|00003c90| 65 6e 20 44 45 46 42 0a | 25 74 6f 6b 65 6e 20 44 |en DEFB.|%token D|
|00003ca0| 45 46 53 0a 25 74 6f 6b | 65 6e 20 44 45 46 57 0a |EFS.%tok|en DEFW.|
|00003cb0| 25 74 6f 6b 65 6e 20 45 | 51 55 0a 25 74 6f 6b 65 |%token E|QU.%toke|
|00003cc0| 6e 20 44 45 46 4c 0a 25 | 74 6f 6b 65 6e 20 3c 69 |n DEFL.%|token <i|
|00003cd0| 74 65 6d 70 74 72 3e 20 | 4c 41 42 45 4c 0a 25 74 |temptr> |LABEL.%t|
|00003ce0| 6f 6b 65 6e 20 3c 69 74 | 65 6d 70 74 72 3e 20 45 |oken <it|emptr> E|
|00003cf0| 51 55 41 54 45 44 0a 25 | 74 6f 6b 65 6e 20 3c 69 |QUATED.%|token <i|
|00003d00| 74 65 6d 70 74 72 3e 20 | 57 41 53 45 51 55 41 54 |temptr> |WASEQUAT|
|00003d10| 45 44 0a 25 74 6f 6b 65 | 6e 20 3c 69 74 65 6d 70 |ED.%toke|n <itemp|
|00003d20| 74 72 3e 20 44 45 46 4c | 45 44 0a 25 74 6f 6b 65 |tr> DEFL|ED.%toke|
|00003d30| 6e 20 3c 69 74 65 6d 70 | 74 72 3e 20 4d 55 4c 54 |n <itemp|tr> MULT|
|00003d40| 44 45 46 0a 25 74 6f 6b | 65 6e 20 3c 69 76 61 6c |DEF.%tok|en <ival|
|00003d50| 3e 20 4d 4f 44 0a 25 74 | 6f 6b 65 6e 20 3c 69 76 |> MOD.%t|oken <iv|
|00003d60| 61 6c 3e 20 53 48 4c 0a | 25 74 6f 6b 65 6e 20 3c |al> SHL.|%token <|
|00003d70| 69 76 61 6c 3e 20 53 48 | 52 0a 25 74 6f 6b 65 6e |ival> SH|R.%token|
|00003d80| 20 3c 69 76 61 6c 3e 20 | 4e 4f 54 0a 25 74 6f 6b | <ival> |NOT.%tok|
|00003d90| 65 6e 20 49 46 0a 25 74 | 6f 6b 65 6e 20 45 4e 44 |en IF.%t|oken END|
|00003da0| 49 46 0a 25 74 6f 6b 65 | 6e 20 3c 69 74 65 6d 70 |IF.%toke|n <itemp|
|00003db0| 74 72 3e 20 41 52 47 50 | 53 45 55 44 4f 0a 25 74 |tr> ARGP|SEUDO.%t|
|00003dc0| 6f 6b 65 6e 20 3c 69 74 | 65 6d 70 74 72 3e 20 4c |oken <it|emptr> L|
|00003dd0| 49 53 54 0a 25 74 6f 6b | 65 6e 20 3c 69 74 65 6d |IST.%tok|en <item|
|00003de0| 70 74 72 3e 20 4d 49 4e | 4d 41 58 0a 25 74 6f 6b |ptr> MIN|MAX.%tok|
|00003df0| 65 6e 20 4d 41 43 52 4f | 0a 25 74 6f 6b 65 6e 20 |en MACRO|.%token |
|00003e00| 3c 69 74 65 6d 70 74 72 | 3e 20 4d 4e 41 4d 45 0a |<itemptr|> MNAME.|
|00003e10| 25 74 6f 6b 65 6e 20 3c | 69 74 65 6d 70 74 72 3e |%token <|itemptr>|
|00003e20| 20 4f 4c 44 4d 4e 41 4d | 45 0a 25 74 6f 6b 65 6e | OLDMNAM|E.%token|
|00003e30| 20 41 52 47 0a 25 74 6f | 6b 65 6e 20 45 4e 44 4d | ARG.%to|ken ENDM|
|00003e40| 0a 25 74 6f 6b 65 6e 20 | 4d 50 41 52 4d 0a 25 74 |.%token |MPARM.%t|
|00003e50| 6f 6b 65 6e 20 3c 69 76 | 61 6c 3e 20 4f 4e 45 43 |oken <iv|al> ONEC|
|00003e60| 48 41 52 0a 25 74 6f 6b | 65 6e 20 3c 69 76 61 6c |HAR.%tok|en <ival|
|00003e70| 3e 20 54 57 4f 43 48 41 | 52 0a 0a 25 74 79 70 65 |> TWOCHA|R..%type|
|00003e80| 20 3c 69 74 65 6d 70 74 | 72 3e 20 6c 61 62 65 6c | <itempt|r> label|
|00003e90| 2e 70 61 72 74 20 73 79 | 6d 62 6f 6c 0a 25 74 79 |.part sy|mbol.%ty|
|00003ea0| 70 65 20 3c 69 76 61 6c | 3e 20 72 65 67 20 65 76 |pe <ival|> reg ev|
|00003eb0| 65 6e 72 65 67 20 72 65 | 61 6c 72 65 67 20 6d 65 |enreg re|alreg me|
|00003ec0| 6d 20 70 75 73 68 61 62 | 6c 65 20 62 63 64 65 73 |m pushab|le bcdes|
|00003ed0| 70 20 62 63 64 65 68 6c | 73 70 20 6d 61 72 20 63 |p bcdehl|sp mar c|
|00003ee0| 6f 6e 64 69 74 69 6f 6e | 0a 25 74 79 70 65 20 3c |ondition|.%type <|
|00003ef0| 69 76 61 6c 3e 20 73 70 | 63 6f 6e 64 69 74 69 6f |ival> sp|conditio|
|00003f00| 6e 20 70 61 72 65 6e 65 | 78 70 72 20 65 78 70 72 |n parene|xpr expr|
|00003f10| 65 73 73 69 6f 6e 20 6c | 78 65 78 70 72 65 73 73 |ession l|xexpress|
|00003f20| 69 6f 6e 0a 0a 25 6c 65 | 66 74 20 27 7c 27 20 27 |ion..%le|ft '|' '|
|00003f30| 5e 27 0a 25 6c 65 66 74 | 20 27 26 27 0a 25 6e 6f |^'.%left| '&'.%no|
|00003f40| 6e 61 73 73 6f 63 20 4e | 4f 54 0a 25 6c 65 66 74 |nassoc N|OT.%left|
|00003f50| 20 27 2b 27 20 27 2d 27 | 0a 25 6c 65 66 74 20 27 | '+' '-'|.%left '|
|00003f60| 2a 27 20 27 2f 27 20 4d | 4f 44 20 53 48 4c 20 53 |*' '/' M|OD SHL S|
|00003f70| 48 52 0a 25 6c 65 66 74 | 20 55 4e 41 52 59 0a 25 |HR.%left| UNARY.%|
|00003f80| 25 0a 0a 25 7b 0a 63 68 | 61 72 20 20 2a 63 70 3b |%..%{.ch|ar *cp;|
|00003f90| 0a 69 6e 74 20 20 69 3b | 0a 25 7d 0a 0a 70 72 6f |.int i;|.%}..pro|
|00003fa0| 67 72 61 6d 3a 0a 09 73 | 74 61 74 65 6d 65 6e 74 |gram:..s|tatement|
|00003fb0| 73 0a 7c 0a 09 65 72 72 | 6f 72 09 7b 09 65 72 72 |s.|..err|or.{.err|
|00003fc0| 6f 72 28 22 66 69 6c 65 | 20 62 61 64 22 29 3b 09 |or("file| bad");.|
|00003fd0| 7d 0a 3b 0a 0a 0a 73 74 | 61 74 65 6d 65 6e 74 73 |}.;...st|atements|
|00003fe0| 3a 0a 09 73 74 61 74 65 | 6d 65 6e 74 0a 7c 0a 09 |:..state|ment.|..|
|00003ff0| 73 74 61 74 65 6d 65 6e | 74 73 20 73 74 61 74 65 |statemen|ts state|
|00004000| 6d 65 6e 74 0a 7c 0a 09 | 73 74 61 74 65 6d 65 6e |ment.|..|statemen|
|00004010| 74 73 20 65 72 72 6f 72 | 09 7b 0a 09 09 66 70 72 |ts error|.{...fpr|
|00004020| 69 6e 74 66 28 73 74 64 | 65 72 72 2c 22 73 74 61 |intf(std|err,"sta|
|00004030| 74 65 6d 65 6e 74 20 65 | 72 72 6f 72 5c 6e 22 29 |tement e|rror\n")|
|00004040| 3b 0a 09 09 65 72 72 5b | 66 66 6c 61 67 5d 2b 2b |;...err[|fflag]++|
|00004050| 3b 0a 09 09 71 75 6f 74 | 65 66 6c 61 67 20 3d 20 |;...quot|eflag = |
|00004060| 30 3b 0a 09 09 77 68 69 | 6c 65 28 79 79 63 68 61 |0;...whi|le(yycha|
|00004070| 72 20 21 3d 20 27 5c 6e | 27 20 26 26 20 79 79 63 |r != '\n|' && yyc|
|00004080| 68 61 72 20 21 3d 20 27 | 5c 30 27 29 20 79 79 63 |har != '|\0') yyc|
|00004090| 68 61 72 20 3d 20 79 79 | 6c 65 78 28 29 3b 0a 09 |har = yy|lex();..|
|000040a0| 09 6c 69 73 74 28 64 6f | 6c 6c 61 72 73 69 67 6e |.list(do|llarsign|
|000040b0| 29 3b 0a 09 09 79 79 63 | 6c 65 61 72 69 6e 3b 79 |);...yyc|learin;y|
|000040c0| 79 65 72 72 6f 6b 3b 0a | 09 7d 0a 3b 0a 0a 0a 73 |yerrok;.|.}.;...s|
|000040d0| 74 61 74 65 6d 65 6e 74 | 3a 0a 09 6c 61 62 65 6c |tatement|:..label|
|000040e0| 2e 70 61 72 74 20 27 5c | 6e 27 09 7b 20 0a 09 09 |.part '\|n'.{ ...|
|000040f0| 69 66 20 28 24 31 29 20 | 6c 69 73 74 28 64 6f 6c |if ($1) |list(dol|
|00004100| 6c 61 72 73 69 67 6e 29 | 3b 0a 09 09 65 6c 73 65 |larsign)|;...else|
|00004110| 20 20 6c 69 73 74 31 28 | 29 3b 0a 09 7d 0a 7c 0a | list1(|);..}.|.|
|00004120| 09 6c 61 62 65 6c 2e 70 | 61 72 74 20 6f 70 65 72 |.label.p|art oper|
|00004130| 61 74 69 6f 6e 20 27 5c | 6e 27 20 7b 0a 09 09 6c |ation '\|n' {...l|
|00004140| 69 73 74 28 64 6f 6c 6c | 61 72 73 69 67 6e 29 3b |ist(doll|arsign);|
|00004150| 0a 09 7d 0a 7c 0a 09 73 | 79 6d 62 6f 6c 20 45 51 |..}.|..s|ymbol EQ|
|00004160| 55 20 65 78 70 72 65 73 | 73 69 6f 6e 20 27 5c 6e |U expres|sion '\n|
|00004170| 27 20 7b 0a 09 09 73 77 | 69 74 63 68 28 24 31 2d |' {...sw|itch($1-|
|00004180| 3e 69 5f 74 6f 6b 65 6e | 29 20 7b 0a 09 09 63 61 |>i_token|) {...ca|
|00004190| 73 65 20 55 4e 44 45 43 | 4c 41 52 45 44 3a 20 63 |se UNDEC|LARED: c|
|000041a0| 61 73 65 20 57 41 53 45 | 51 55 41 54 45 44 3a 0a |ase WASE|QUATED:.|
|000041b0| 09 09 09 24 31 2d 3e 69 | 5f 74 6f 6b 65 6e 20 3d |...$1->i|_token =|
|000041c0| 20 45 51 55 41 54 45 44 | 3b 0a 09 09 09 24 31 2d | EQUATED|;....$1-|
|000041d0| 3e 69 5f 76 61 6c 75 65 | 20 3d 20 24 33 3b 0a 09 |>i_value| = $3;..|
|000041e0| 09 09 62 72 65 61 6b 3b | 0a 09 09 64 65 66 61 75 |..break;|...defau|
|000041f0| 6c 74 3a 0a 09 09 09 65 | 72 72 5b 6d 66 6c 61 67 |lt:....e|rr[mflag|
|00004200| 5d 2b 2b 3b 0a 09 09 09 | 24 31 2d 3e 69 5f 74 6f |]++;....|$1->i_to|
|00004210| 6b 65 6e 20 3d 20 4d 55 | 4c 54 44 45 46 3b 0a 09 |ken = MU|LTDEF;..|
|00004220| 09 7d 0a 09 09 6c 69 73 | 74 28 24 33 29 3b 0a 09 |.}...lis|t($3);..|
|00004230| 7d 0a 7c 0a 09 73 79 6d | 62 6f 6c 20 44 45 46 4c |}.|..sym|bol DEFL|
|00004240| 20 65 78 70 72 65 73 73 | 69 6f 6e 20 27 5c 6e 27 | express|ion '\n'|
|00004250| 20 7b 0a 09 09 73 77 69 | 74 63 68 28 24 31 2d 3e | {...swi|tch($1->|
|00004260| 69 5f 74 6f 6b 65 6e 29 | 20 7b 0a 09 09 63 61 73 |i_token)| {...cas|
|00004270| 65 20 55 4e 44 45 43 4c | 41 52 45 44 3a 20 63 61 |e UNDECL|ARED: ca|
|00004280| 73 65 20 44 45 46 4c 45 | 44 3a 0a 09 09 09 24 31 |se DEFLE|D:....$1|
|00004290| 2d 3e 69 5f 74 6f 6b 65 | 6e 20 3d 20 44 45 46 4c |->i_toke|n = DEFL|
|000042a0| 45 44 3b 0a 09 09 09 24 | 31 2d 3e 69 5f 76 61 6c |ED;....$|1->i_val|
|000042b0| 75 65 20 3d 20 24 33 3b | 0a 09 09 09 62 72 65 61 |ue = $3;|....brea|
|000042c0| 6b 3b 0a 09 09 64 65 66 | 61 75 6c 74 3a 0a 09 09 |k;...def|ault:...|
|000042d0| 09 65 72 72 5b 6d 66 6c | 61 67 5d 2b 2b 3b 0a 09 |.err[mfl|ag]++;..|
|000042e0| 09 09 24 31 2d 3e 69 5f | 74 6f 6b 65 6e 20 3d 20 |..$1->i_|token = |
|000042f0| 4d 55 4c 54 44 45 46 3b | 0a 09 09 7d 0a 09 09 6c |MULTDEF;|...}...l|
|00004300| 69 73 74 28 24 33 29 3b | 0a 09 7d 0a 7c 0a 09 73 |ist($3);|..}.|..s|
|00004310| 79 6d 62 6f 6c 20 4d 49 | 4e 4d 41 58 20 65 78 70 |ymbol MI|NMAX exp|
|00004320| 72 65 73 73 69 6f 6e 20 | 27 2c 27 20 65 78 70 72 |ression |',' expr|
|00004330| 65 73 73 69 6f 6e 20 27 | 5c 6e 27 20 7b 0a 09 09 |ession '|\n' {...|
|00004340| 73 77 69 74 63 68 20 28 | 24 31 2d 3e 69 5f 74 6f |switch (|$1->i_to|
|00004350| 6b 65 6e 29 20 7b 0a 09 | 09 63 61 73 65 20 55 4e |ken) {..|.case UN|
|00004360| 44 45 43 4c 41 52 45 44 | 3a 20 63 61 73 65 20 44 |DECLARED|: case D|
|00004370| 45 46 4c 45 44 3a 0a 09 | 09 09 24 31 2d 3e 69 5f |EFLED:..|..$1->i_|
|00004380| 74 6f 6b 65 6e 20 3d 20 | 44 45 46 4c 45 44 3b 0a |token = |DEFLED;.|
|00004390| 09 09 09 69 66 20 28 24 | 32 2d 3e 69 5f 76 61 6c |...if ($|2->i_val|
|000043a0| 75 65 29 09 2f 2a 20 6d | 61 78 20 2a 2f 0a 09 09 |ue)./* m|ax */...|
|000043b0| 09 09 6c 69 73 74 28 24 | 31 2d 3e 69 5f 76 61 6c |..list($|1->i_val|
|000043c0| 75 65 20 3d 20 28 24 33 | 20 3e 20 24 35 3f 20 24 |ue = ($3| > $5? $|
|000043d0| 33 3a 24 35 29 29 3b 0a | 09 09 09 65 6c 73 65 20 |3:$5));.|...else |
|000043e0| 6c 69 73 74 28 24 31 2d | 3e 69 5f 76 61 6c 75 65 |list($1-|>i_value|
|000043f0| 20 3d 20 28 24 33 20 3c | 20 24 35 3f 20 24 33 3a | = ($3 <| $5? $3:|
|00004400| 24 35 29 29 3b 0a 09 09 | 09 62 72 65 61 6b 3b 0a |$5));...|.break;.|
|00004410| 09 09 64 65 66 61 75 6c | 74 3a 0a 09 09 09 65 72 |..defaul|t:....er|
|00004420| 72 5b 6d 66 6c 61 67 5d | 2b 2b 3b 0a 09 09 09 24 |r[mflag]|++;....$|
|00004430| 31 2d 3e 69 5f 74 6f 6b | 65 6e 20 3d 20 4d 55 4c |1->i_tok|en = MUL|
|00004440| 54 44 45 46 3b 0a 09 09 | 09 6c 69 73 74 28 24 31 |TDEF;...|.list($1|
|00004450| 2d 3e 69 5f 76 61 6c 75 | 65 29 3b 0a 09 09 7d 0a |->i_valu|e);...}.|
|00004460| 09 7d 0a 7c 0a 09 49 46 | 20 65 78 70 72 65 73 73 |.}.|..IF| express|
|00004470| 69 6f 6e 20 27 5c 6e 27 | 20 7b 0a 09 09 69 66 20 |ion '\n'| {...if |
|00004480| 28 69 66 70 74 72 20 3e | 3d 20 69 66 73 74 6d 61 |(ifptr >|= ifstma|
|00004490| 78 29 0a 09 09 09 65 72 | 72 6f 72 28 22 54 6f 6f |x)....er|ror("Too|
|000044a0| 20 6d 61 6e 79 20 69 66 | 73 22 29 3b 0a 09 09 65 | many if|s");...e|
|000044b0| 6c 73 65 20 7b 0a 09 09 | 09 69 66 20 28 70 61 73 |lse {...|.if (pas|
|000044c0| 73 32 29 20 7b 0a 09 09 | 09 09 2a 2b 2b 69 66 70 |s2) {...|..*++ifp|
|000044d0| 74 72 20 3d 20 2a 65 78 | 70 69 66 70 2b 2b 3b 0a |tr = *ex|pifp++;.|
|000044e0| 09 09 09 09 69 66 20 28 | 2a 69 66 70 74 72 20 21 |....if (|*ifptr !|
|000044f0| 3d 20 21 28 79 79 70 76 | 5b 32 5d 2e 69 76 61 6c |= !(yypv|[2].ival|
|00004500| 29 29 20 65 72 72 5b 70 | 66 6c 61 67 5d 2b 2b 3b |)) err[p|flag]++;|
|00004510| 0a 09 09 09 7d 20 65 6c | 73 65 20 7b 0a 09 09 09 |....} el|se {....|
|00004520| 09 69 66 20 28 65 78 70 | 69 66 70 20 3e 3d 20 65 |.if (exp|ifp >= e|
|00004530| 78 70 69 66 6d 61 78 29 | 0a 09 09 09 09 09 65 72 |xpifmax)|......er|
|00004540| 72 6f 72 28 22 54 6f 6f | 20 6d 61 6e 79 20 69 66 |ror("Too| many if|
|00004550| 73 21 22 29 3b 0a 09 09 | 09 09 2a 65 78 70 69 66 |s!");...|..*expif|
|00004560| 70 2b 2b 20 3d 20 21 28 | 79 79 70 76 5b 32 5d 2e |p++ = !(|yypv[2].|
|00004570| 69 76 61 6c 29 3b 0a 09 | 09 09 09 2a 2b 2b 69 66 |ival);..|...*++if|
|00004580| 70 74 72 20 3d 20 21 28 | 79 79 70 76 5b 32 5d 2e |ptr = !(|yypv[2].|
|00004590| 69 76 61 6c 29 3b 0a 09 | 09 09 7d 0a 09 09 7d 0a |ival);..|..}...}.|
|000045a0| 09 09 73 61 76 65 6f 70 | 74 20 3d 20 66 6f 70 74 |..saveop|t = fopt|
|000045b0| 3b 0a 09 09 66 6f 70 74 | 20 3d 20 31 3b 0a 09 09 |;...fopt| = 1;...|
|000045c0| 6c 69 73 74 28 79 79 70 | 76 5b 32 5d 2e 69 76 61 |list(yyp|v[2].iva|
|000045d0| 6c 29 3b 0a 09 09 66 6f | 70 74 20 3d 20 73 61 76 |l);...fo|pt = sav|
|000045e0| 65 6f 70 74 3b 0a 09 7d | 0a 7c 0a 09 45 4e 44 49 |eopt;..}|.|..ENDI|
|000045f0| 46 20 27 5c 6e 27 20 7b | 0a 09 09 69 66 20 28 69 |F '\n' {|...if (i|
|00004600| 66 70 74 72 20 3d 3d 20 | 69 66 73 74 61 63 6b 29 |fptr == |ifstack)|
|00004610| 20 65 72 72 5b 62 66 6c | 61 67 5d 2b 2b 3b 0a 09 | err[bfl|ag]++;..|
|00004620| 09 65 6c 73 65 20 2d 2d | 69 66 70 74 72 3b 0a 09 |.else --|ifptr;..|
|00004630| 09 6c 69 73 74 31 28 29 | 3b 0a 09 7d 0a 7c 0a 09 |.list1()|;..}.|..|
|00004640| 6c 61 62 65 6c 2e 70 61 | 72 74 20 45 4e 44 20 27 |label.pa|rt END '|
|00004650| 5c 6e 27 20 7b 0a 09 09 | 6c 69 73 74 28 64 6f 6c |\n' {...|list(dol|
|00004660| 6c 61 72 73 69 67 6e 29 | 3b 0a 09 09 70 65 65 6b |larsign)|;...peek|
|00004670| 63 20 3d 20 30 3b 0a 09 | 7d 0a 7c 0a 09 6c 61 62 |c = 0;..|}.|..lab|
|00004680| 65 6c 2e 70 61 72 74 20 | 45 4e 44 20 65 78 70 72 |el.part |END expr|
|00004690| 65 73 73 69 6f 6e 20 27 | 5c 6e 27 20 7b 0a 09 09 |ession '|\n' {...|
|000046a0| 78 65 71 5f 66 6c 61 67 | 2b 2b 3b 0a 09 09 78 65 |xeq_flag|++;...xe|
|000046b0| 71 20 3d 20 24 33 3b 0a | 09 09 6c 69 73 74 28 24 |q = $3;.|..list($|
|000046c0| 33 29 3b 0a 09 09 70 65 | 65 6b 63 20 3d 20 30 3b |3);...pe|ekc = 0;|
|000046d0| 0a 09 7d 0a 7c 0a 09 6c | 61 62 65 6c 2e 70 61 72 |..}.|..l|abel.par|
|000046e0| 74 20 44 45 46 53 20 65 | 78 70 72 65 73 73 69 6f |t DEFS e|xpressio|
|000046f0| 6e 20 27 5c 6e 27 20 7b | 0a 09 09 69 66 20 28 24 |n '\n' {|...if ($|
|00004700| 33 20 3c 20 30 29 20 65 | 72 72 5b 76 66 6c 61 67 |3 < 0) e|rr[vflag|
|00004710| 5d 2b 2b 3b 0a 09 09 6c | 69 73 74 28 64 6f 6c 6c |]++;...l|ist(doll|
|00004720| 61 72 73 69 67 6e 29 3b | 0a 09 09 69 66 20 28 24 |arsign);|...if ($|
|00004730| 33 29 20 7b 0a 09 09 09 | 66 6c 75 73 68 62 69 6e |3) {....|flushbin|
|00004740| 28 29 3b 0a 09 09 09 64 | 6f 6c 6c 61 72 73 69 67 |();....d|ollarsig|
|00004750| 6e 20 2b 3d 20 24 33 3b | 0a 09 09 09 6f 6c 64 64 |n += $3;|....oldd|
|00004760| 6f 6c 6c 61 72 20 3d 20 | 64 6f 6c 6c 61 72 73 69 |ollar = |dollarsi|
|00004770| 67 6e 3b 0a 09 09 7d 0a | 09 7d 0a 7c 0a 09 41 52 |gn;...}.|.}.|..AR|
|00004780| 47 50 53 45 55 44 4f 20 | 61 72 67 5f 6f 6e 20 41 |GPSEUDO |arg_on A|
|00004790| 52 47 20 20 61 72 67 5f | 6f 66 66 20 27 5c 6e 27 |RG arg_|off '\n'|
|000047a0| 20 7b 0a 09 09 6c 69 73 | 74 31 28 29 3b 0a 09 09 | {...lis|t1();...|
|000047b0| 73 77 69 74 63 68 20 28 | 24 31 2d 3e 69 5f 76 61 |switch (|$1->i_va|
|000047c0| 6c 75 65 29 20 7b 0a 0a | 09 09 63 61 73 65 20 30 |lue) {..|..case 0|
|000047d0| 3a 09 09 2f 2a 20 74 69 | 74 6c 65 20 2a 2f 0a 09 |:../* ti|tle */..|
|000047e0| 09 09 6c 69 6e 65 70 74 | 72 20 3d 20 6c 69 6e 65 |..linept|r = line|
|000047f0| 62 75 66 3b 0a 09 09 09 | 63 70 20 3d 20 74 65 6d |buf;....|cp = tem|
|00004800| 70 62 75 66 3b 0a 09 09 | 09 74 69 74 6c 65 20 3d |pbuf;...|.title =|
|00004810| 20 74 69 74 6c 65 73 70 | 61 63 65 3b 0a 09 09 09 | titlesp|ace;....|
|00004820| 77 68 69 6c 65 20 28 28 | 2a 74 69 74 6c 65 2b 2b |while ((|*title++|
|00004830| 20 3d 20 2a 63 70 2b 2b | 29 20 26 26 20 28 74 69 | = *cp++|) && (ti|
|00004840| 74 6c 65 20 3c 20 26 74 | 69 74 6c 65 73 70 61 63 |tle < &t|itlespac|
|00004850| 65 5b 54 49 54 4c 45 4c | 45 4e 5d 29 29 3b 0a 09 |e[TITLEL|EN]));..|
|00004860| 09 09 2a 74 69 74 6c 65 | 20 3d 20 30 3b 0a 09 09 |..*title| = 0;...|
|00004870| 09 74 69 74 6c 65 20 3d | 20 74 69 74 6c 65 73 70 |.title =| titlesp|
|00004880| 61 63 65 3b 0a 09 09 09 | 62 72 65 61 6b 3b 0a 0a |ace;....|break;..|
|00004890| 09 09 63 61 73 65 20 31 | 3a 09 09 2f 2a 20 72 73 |..case 1|:../* rs|
|000048a0| 79 6d 20 2a 2f 0a 09 09 | 09 69 66 20 28 70 61 73 |ym */...|.if (pas|
|000048b0| 73 32 29 20 62 72 65 61 | 6b 3b 0a 09 09 09 69 6e |s2) brea|k;....in|
|000048c0| 73 79 6d 74 61 62 28 74 | 65 6d 70 62 75 66 29 3b |symtab(t|empbuf);|
|000048d0| 0a 09 09 09 62 72 65 61 | 6b 3b 0a 0a 09 09 63 61 |....brea|k;....ca|
|000048e0| 73 65 20 32 3a 09 09 2f | 2a 20 77 73 79 6d 20 2a |se 2:../|* wsym *|
|000048f0| 2f 0a 09 09 09 77 72 69 | 74 65 73 79 6d 73 20 3d |/....wri|tesyms =|
|00004900| 20 6d 61 6c 6c 6f 63 28 | 73 74 72 6c 65 6e 28 74 | malloc(|strlen(t|
|00004910| 65 6d 70 62 75 66 29 2b | 31 29 3b 0a 09 09 09 73 |empbuf)+|1);....s|
|00004920| 74 72 63 70 79 28 77 72 | 69 74 65 73 79 6d 73 2c |trcpy(wr|itesyms,|
|00004930| 20 74 65 6d 70 62 75 66 | 29 3b 0a 09 09 09 62 72 | tempbuf|);....br|
|00004940| 65 61 6b 3b 0a 09 09 63 | 61 73 65 20 33 3a 09 09 |eak;...c|ase 3:..|
|00004950| 2f 2a 20 69 6e 63 6c 75 | 64 65 20 66 69 6c 65 20 |/* inclu|de file |
|00004960| 2a 2f 0a 09 09 09 6e 65 | 78 74 5f 73 6f 75 72 63 |*/....ne|xt_sourc|
|00004970| 65 28 74 65 6d 70 62 75 | 66 29 20 3b 0a 09 09 09 |e(tempbu|f) ;....|
|00004980| 62 72 65 61 6b 20 3b 0a | 09 09 7d 0a 09 7d 0a 7c |break ;.|..}..}.||
|00004990| 0a 09 41 52 47 50 53 45 | 55 44 4f 20 61 72 67 5f |..ARGPSE|UDO arg_|
|000049a0| 6f 6e 20 27 5c 6e 27 20 | 61 72 67 5f 6f 66 66 20 |on '\n' |arg_off |
|000049b0| 7b 0a 09 09 66 70 72 69 | 6e 74 66 28 73 74 64 65 |{...fpri|ntf(stde|
|000049c0| 72 72 2c 22 41 52 47 50 | 53 45 55 44 4f 20 65 72 |rr,"ARGP|SEUDO er|
|000049d0| 72 6f 72 5c 6e 22 29 3b | 0a 09 09 65 72 72 5b 66 |ror\n");|...err[f|
|000049e0| 66 6c 61 67 5d 2b 2b 3b | 0a 09 09 6c 69 73 74 28 |flag]++;|...list(|
|000049f0| 64 6f 6c 6c 61 72 73 69 | 67 6e 29 3b 0a 09 7d 0a |dollarsi|gn);..}.|
|00004a00| 7c 0a 09 4c 49 53 54 20 | 27 5c 6e 27 20 7b 0a 09 ||..LIST |'\n' {..|
|00004a10| 09 69 66 20 28 24 31 20 | 21 3d 20 28 73 74 72 75 |.if ($1 |!= (stru|
|00004a20| 63 74 20 69 74 65 6d 20 | 2a 29 20 2d 31 29 20 24 |ct item |*) -1) $|
|00004a30| 3c 69 76 61 6c 3e 32 20 | 3d 20 31 3b 0a 09 09 67 |<ival>2 |= 1;...g|
|00004a40| 6f 74 6f 20 64 6f 6c 6f | 70 74 3b 20 7d 0a 7c 0a |oto dolo|pt; }.|.|
|00004a50| 09 4c 49 53 54 20 65 78 | 70 72 65 73 73 69 6f 6e |.LIST ex|pression|
|00004a60| 20 27 5c 6e 27 20 7b 0a | 09 64 6f 6c 6f 70 74 3a | '\n' {.|.dolopt:|
|00004a70| 0a 09 09 6c 69 6e 65 63 | 6e 74 2b 2b 3b 0a 09 09 |...linec|nt++;...|
|00004a80| 69 66 20 28 70 61 73 73 | 32 29 20 7b 0a 09 09 09 |if (pass|2) {....|
|00004a90| 6c 69 6e 65 70 74 72 20 | 3d 20 6c 69 6e 65 62 75 |lineptr |= linebu|
|00004aa0| 66 3b 0a 09 09 09 73 77 | 69 74 63 68 20 28 24 31 |f;....sw|itch ($1|
|00004ab0| 2d 3e 69 5f 76 61 6c 75 | 65 29 20 7b 0a 09 09 09 |->i_valu|e) {....|
|00004ac0| 63 61 73 65 20 30 3a 09 | 2f 2a 20 6c 69 73 74 20 |case 0:.|/* list |
|00004ad0| 2a 2f 0a 09 09 09 09 69 | 66 20 28 24 32 20 3c 20 |*/.....i|f ($2 < |
|00004ae0| 30 29 20 6c 73 74 6f 66 | 66 20 3d 20 31 3b 0a 09 |0) lstof|f = 1;..|
|00004af0| 09 09 09 69 66 20 28 24 | 32 20 3e 20 30 29 20 6c |...if ($|2 > 0) l|
|00004b00| 73 74 6f 66 66 20 3d 20 | 30 3b 0a 09 09 09 09 62 |stoff = |0;.....b|
|00004b10| 72 65 61 6b 3b 0a 0a 09 | 09 09 63 61 73 65 20 31 |reak;...|..case 1|
|00004b20| 3a 09 2f 2a 20 65 6a 65 | 63 74 20 2a 2f 0a 09 09 |:./* eje|ct */...|
|00004b30| 09 09 69 66 20 28 24 32 | 29 20 65 6a 65 63 74 28 |..if ($2|) eject(|
|00004b40| 29 3b 0a 09 09 09 09 62 | 72 65 61 6b 3b 0a 0a 09 |);.....b|reak;...|
|00004b50| 09 09 63 61 73 65 20 32 | 3a 09 2f 2a 20 73 70 61 |..case 2|:./* spa|
|00004b60| 63 65 20 2a 2f 0a 09 09 | 09 09 69 66 20 28 28 6c |ce */...|..if ((l|
|00004b70| 69 6e 65 20 2b 20 24 32 | 29 20 3e 20 36 30 29 20 |ine + $2|) > 60) |
|00004b80| 65 6a 65 63 74 28 29 3b | 0a 09 09 09 09 65 6c 73 |eject();|.....els|
|00004b90| 65 20 73 70 61 63 65 28 | 24 32 29 3b 0a 09 09 09 |e space(|$2);....|
|00004ba0| 09 62 72 65 61 6b 3b 0a | 0a 09 09 09 63 61 73 65 |.break;.|....case|
|00004bb0| 20 33 3a 09 2f 2a 20 65 | 6c 69 73 74 20 2a 2f 0a | 3:./* e|list */.|
|00004bc0| 09 09 09 09 65 6f 70 74 | 20 3d 20 65 64 65 66 3b |....eopt| = edef;|
|00004bd0| 0a 09 09 09 09 69 66 20 | 28 24 32 20 3c 20 30 29 |.....if |($2 < 0)|
|00004be0| 20 65 6f 70 74 20 3d 20 | 30 3b 0a 09 09 09 09 69 | eopt = |0;.....i|
|00004bf0| 66 20 28 24 32 20 3e 20 | 30 29 20 65 6f 70 74 20 |f ($2 > |0) eopt |
|00004c00| 3d 20 31 3b 0a 09 09 09 | 09 62 72 65 61 6b 3b 0a |= 1;....|.break;.|
|00004c10| 0a 09 09 09 63 61 73 65 | 20 34 3a 09 2f 2a 20 66 |....case| 4:./* f|
|00004c20| 6f 70 74 20 2a 2f 0a 09 | 09 09 09 66 6f 70 74 20 |opt */..|...fopt |
|00004c30| 3d 20 66 64 65 66 3b 0a | 09 09 09 09 69 66 20 28 |= fdef;.|....if (|
|00004c40| 24 32 20 3c 20 30 29 20 | 66 6f 70 74 20 3d 20 30 |$2 < 0) |fopt = 0|
|00004c50| 3b 0a 09 09 09 09 69 66 | 20 28 24 32 20 3e 20 30 |;.....if| ($2 > 0|
|00004c60| 29 20 66 6f 70 74 20 3d | 20 31 3b 0a 09 09 09 09 |) fopt =| 1;.....|
|00004c70| 62 72 65 61 6b 3b 0a 0a | 09 09 09 63 61 73 65 20 |break;..|...case |
|00004c80| 35 3a 09 2f 2a 20 67 6f | 70 74 20 2a 2f 0a 09 09 |5:./* go|pt */...|
|00004c90| 09 09 67 6f 70 74 20 3d | 20 67 64 65 66 3b 0a 09 |..gopt =| gdef;..|
|00004ca0| 09 09 09 69 66 20 28 24 | 32 20 3c 20 30 29 20 67 |...if ($|2 < 0) g|
|00004cb0| 6f 70 74 20 3d 20 31 3b | 0a 09 09 09 09 69 66 20 |opt = 1;|.....if |
|00004cc0| 28 24 32 20 3e 20 30 29 | 20 67 6f 70 74 20 3d 20 |($2 > 0)| gopt = |
|00004cd0| 30 3b 0a 09 09 09 09 62 | 72 65 61 6b 3b 0a 0a 09 |0;.....b|reak;...|
|00004ce0| 09 09 63 61 73 65 20 36 | 3a 20 2f 2a 20 6d 6f 70 |..case 6|: /* mop|
|00004cf0| 74 20 2a 2f 0a 09 09 09 | 09 6d 6f 70 74 20 3d 20 |t */....|.mopt = |
|00004d00| 6d 64 65 66 3b 0a 09 09 | 09 09 69 66 20 28 24 32 |mdef;...|..if ($2|
|00004d10| 20 3c 20 30 29 20 6d 6f | 70 74 20 3d 20 30 3b 0a | < 0) mo|pt = 0;.|
|00004d20| 09 09 09 09 69 66 20 28 | 24 32 20 3e 20 30 29 20 |....if (|$2 > 0) |
|00004d30| 6d 6f 70 74 20 3d 20 31 | 3b 0a 09 09 09 7d 0a 09 |mopt = 1|;....}..|
|00004d40| 09 7d 0a 09 7d 0a 7c 0a | 09 55 4e 44 45 43 4c 41 |.}..}.|.|.UNDECLA|
|00004d50| 52 45 44 20 4d 41 43 52 | 4f 20 70 61 72 6d 2e 6c |RED MACR|O parm.l|
|00004d60| 69 73 74 20 27 5c 6e 27 | 20 7b 0a 09 09 24 31 2d |ist '\n'| {...$1-|
|00004d70| 3e 69 5f 74 6f 6b 65 6e | 20 3d 20 4d 4e 41 4d 45 |>i_token| = MNAME|
|00004d80| 3b 0a 09 09 24 31 2d 3e | 69 5f 76 61 6c 75 65 20 |;...$1->|i_value |
|00004d90| 3d 20 6d 66 70 74 72 3b | 0a 09 09 6d 66 73 65 65 |= mfptr;|...mfsee|
|00004da0| 6b 28 6d 66 69 6c 65 2c | 20 28 6c 6f 6e 67 29 6d |k(mfile,| (long)m|
|00004db0| 66 70 74 72 2c 20 30 29 | 3b 0a 09 09 6c 69 73 74 |fptr, 0)|;...list|
|00004dc0| 31 28 29 3b 0a 09 09 6d | 6c 65 78 28 29 20 3b 0a |1();...m|lex() ;.|
|00004dd0| 09 09 70 61 72 6d 5f 6e | 75 6d 62 65 72 20 3d 20 |..parm_n|umber = |
|00004de0| 30 3b 0a 09 7d 0a 7c 0a | 09 4f 4c 44 4d 4e 41 4d |0;..}.|.|.OLDMNAM|
|00004df0| 45 20 4d 41 43 52 4f 20 | 7b 0a 09 09 24 31 2d 3e |E MACRO |{...$1->|
|00004e00| 69 5f 74 6f 6b 65 6e 20 | 3d 20 4d 4e 41 4d 45 3b |i_token |= MNAME;|
|00004e10| 0a 09 09 77 68 69 6c 65 | 20 28 79 79 63 68 61 72 |...while| (yychar|
|00004e20| 20 21 3d 20 45 4e 44 4d | 20 26 26 20 79 79 63 68 | != ENDM| && yych|
|00004e30| 61 72 29 20 7b 0a 09 09 | 09 77 68 69 6c 65 20 28 |ar) {...|.while (|
|00004e40| 79 79 63 68 61 72 20 21 | 3d 20 27 5c 6e 27 20 26 |yychar !|= '\n' &|
|00004e50| 26 20 79 79 63 68 61 72 | 29 0a 09 09 09 09 79 79 |& yychar|).....yy|
|00004e60| 63 68 61 72 20 3d 20 79 | 79 6c 65 78 28 29 3b 0a |char = y|ylex();.|
|00004e70| 09 09 09 6c 69 73 74 31 | 28 29 3b 0a 09 09 09 79 |...list1|();....y|
|00004e80| 79 63 68 61 72 20 3d 20 | 79 79 6c 65 78 28 29 3b |ychar = |yylex();|
|00004e90| 0a 09 09 7d 0a 09 09 77 | 68 69 6c 65 20 28 79 79 |...}...w|hile (yy|
|00004ea0| 63 68 61 72 20 21 3d 20 | 27 5c 6e 27 20 26 26 20 |char != |'\n' && |
|00004eb0| 79 79 63 68 61 72 29 20 | 79 79 63 68 61 72 20 3d |yychar) |yychar =|
|00004ec0| 20 79 79 6c 65 78 28 29 | 3b 0a 09 09 6c 69 73 74 | yylex()|;...list|
|00004ed0| 31 28 29 3b 0a 09 09 79 | 79 63 68 61 72 20 3d 20 |1();...y|ychar = |
|00004ee0| 79 79 6c 65 78 28 29 3b | 0a 09 7d 0a 7c 0a 09 6c |yylex();|..}.|..l|
|00004ef0| 61 62 65 6c 2e 70 61 72 | 74 20 4d 4e 41 4d 45 20 |abel.par|t MNAME |
|00004f00| 61 6c 20 61 72 67 2e 6c | 69 73 74 20 27 5c 6e 27 |al arg.l|ist '\n'|
|00004f10| 20 7b 0a 09 65 78 70 61 | 6e 64 3a 0a 09 09 24 32 | {..expa|nd:...$2|
|00004f20| 2d 3e 69 5f 75 73 65 73 | 2b 2b 20 3b 0a 09 09 61 |->i_uses|++ ;...a|
|00004f30| 72 67 5f 66 6c 61 67 20 | 3d 20 30 3b 0a 09 09 70 |rg_flag |= 0;...p|
|00004f40| 61 72 6d 5f 6e 75 6d 62 | 65 72 20 3d 20 30 3b 0a |arm_numb|er = 0;.|
|00004f50| 09 09 6c 69 73 74 28 64 | 6f 6c 6c 61 72 73 69 67 |..list(d|ollarsig|
|00004f60| 6e 29 3b 0a 09 09 65 78 | 70 70 74 72 2b 2b 3b 0a |n);...ex|pptr++;.|
|00004f70| 09 09 65 73 74 20 3d 20 | 65 73 74 32 3b 0a 09 09 |..est = |est2;...|
|00004f80| 65 73 74 5b 46 4c 4f 43 | 5d 20 3d 20 66 6c 6f 63 |est[FLOC|] = floc|
|00004f90| 3b 0a 09 09 65 73 74 5b | 54 45 4d 50 4e 55 4d 5d |;...est[|TEMPNUM]|
|00004fa0| 20 3d 20 28 63 68 61 72 | 20 2a 29 65 78 70 5f 6e | = (char| *)exp_n|
|00004fb0| 75 6d 62 65 72 2b 2b 3b | 0a 09 09 66 6c 6f 63 20 |umber++;|...floc |
|00004fc0| 3d 20 28 63 68 61 72 20 | 2a 29 28 24 32 2d 3e 69 |= (char |*)($2->i|
|00004fd0| 5f 76 61 6c 75 65 29 3b | 0a 09 09 6d 66 73 65 65 |_value);|...mfsee|
|00004fe0| 6b 28 6d 66 69 6c 65 2c | 20 28 6c 6f 6e 67 29 66 |k(mfile,| (long)f|
|00004ff0| 6c 6f 63 2c 20 30 29 3b | 0a 09 7d 0a 3b 0a 0a 0a |loc, 0);|..}.;...|
|00005000| 6c 61 62 65 6c 2e 70 61 | 72 74 3a 0a 09 2f 2a 65 |label.pa|rt:../*e|
|00005010| 6d 70 74 79 2a 2f 0a 09 | 20 7b 09 24 24 20 3d 20 |mpty*/..| {.$$ = |
|00005020| 4e 55 4c 4c 3b 09 7d 0a | 7c 0a 09 73 79 6d 62 6f |NULL;.}.||..symbo|
|00005030| 6c 20 27 3a 27 20 7b 0a | 09 09 73 77 69 74 63 68 |l ':' {.|..switch|
|00005040| 28 24 31 2d 3e 69 5f 74 | 6f 6b 65 6e 29 20 7b 0a |($1->i_t|oken) {.|
|00005050| 09 09 63 61 73 65 20 55 | 4e 44 45 43 4c 41 52 45 |..case U|NDECLARE|
|00005060| 44 3a 0a 09 09 09 69 66 | 20 28 70 61 73 73 32 29 |D:....if| (pass2)|
|00005070| 0a 09 09 09 09 65 72 72 | 5b 70 66 6c 61 67 5d 2b |.....err|[pflag]+|
|00005080| 2b 3b 0a 09 09 09 65 6c | 73 65 20 7b 0a 09 09 09 |+;....el|se {....|
|00005090| 09 24 31 2d 3e 69 5f 74 | 6f 6b 65 6e 20 3d 20 4c |.$1->i_t|oken = L|
|000050a0| 41 42 45 4c 3b 0a 09 09 | 09 09 24 31 2d 3e 69 5f |ABEL;...|..$1->i_|
|000050b0| 76 61 6c 75 65 20 3d 20 | 64 6f 6c 6c 61 72 73 69 |value = |dollarsi|
|000050c0| 67 6e 3b 0a 09 09 09 7d | 0a 09 09 09 62 72 65 61 |gn;....}|....brea|
|000050d0| 6b 3b 0a 09 09 63 61 73 | 65 20 4c 41 42 45 4c 3a |k;...cas|e LABEL:|
|000050e0| 0a 09 09 09 69 66 20 28 | 21 70 61 73 73 32 29 20 |....if (|!pass2) |
|000050f0| 7b 0a 09 09 09 09 24 31 | 2d 3e 69 5f 74 6f 6b 65 |{.....$1|->i_toke|
|00005100| 6e 20 3d 20 4d 55 4c 54 | 44 45 46 3b 0a 09 09 09 |n = MULT|DEF;....|
|00005110| 09 65 72 72 5b 6d 66 6c | 61 67 5d 2b 2b 3b 0a 09 |.err[mfl|ag]++;..|
|00005120| 09 09 7d 20 65 6c 73 65 | 20 69 66 20 28 24 31 2d |..} else| if ($1-|
|00005130| 3e 69 5f 76 61 6c 75 65 | 20 21 3d 20 64 6f 6c 6c |>i_value| != doll|
|00005140| 61 72 73 69 67 6e 29 0a | 09 09 09 09 65 72 72 5b |arsign).|....err[|
|00005150| 70 66 6c 61 67 5d 2b 2b | 3b 0a 09 09 09 62 72 65 |pflag]++|;....bre|
|00005160| 61 6b 3b 0a 09 09 64 65 | 66 61 75 6c 74 3a 0a 09 |ak;...de|fault:..|
|00005170| 09 09 65 72 72 5b 6d 66 | 6c 61 67 5d 2b 2b 3b 0a |..err[mf|lag]++;.|
|00005180| 09 09 09 24 31 2d 3e 69 | 5f 74 6f 6b 65 6e 20 3d |...$1->i|_token =|
|00005190| 20 4d 55 4c 54 44 45 46 | 3b 0a 09 09 7d 0a 09 7d | MULTDEF|;...}..}|
|000051a0| 0a 3b 0a 0a 0a 6f 70 65 | 72 61 74 69 6f 6e 3a 0a |.;...ope|ration:.|
|000051b0| 09 4e 4f 4f 50 45 52 41 | 4e 44 0a 09 09 7b 20 65 |.NOOPERA|ND...{ e|
|000051c0| 6d 69 74 31 28 24 31 2d | 3e 69 5f 76 61 6c 75 65 |mit1($1-|>i_value|
|000051d0| 2c 20 30 2c 20 30 2c 20 | 31 29 3b 20 7d 0a 7c 0a |, 0, 0, |1); }.|.|
|000051e0| 09 4a 50 20 65 78 70 72 | 65 73 73 69 6f 6e 0a 09 |.JP expr|ession..|
|000051f0| 09 7b 20 65 6d 69 74 28 | 33 2c 20 30 33 30 33 2c |.{ emit(|3, 0303,|
|00005200| 20 24 32 2c 20 24 32 20 | 3e 3e 20 38 29 3b 09 7d | $2, $2 |>> 8);.}|
|00005210| 0a 7c 0a 09 43 41 4c 4c | 20 65 78 70 72 65 73 73 |.|..CALL| express|
|00005220| 69 6f 6e 0a 09 09 7b 09 | 65 6d 69 74 28 33 2c 20 |ion...{.|emit(3, |
|00005230| 30 33 31 35 2c 20 24 32 | 2c 20 24 32 20 3e 3e 20 |0315, $2|, $2 >> |
|00005240| 38 29 3b 09 7d 0a 7c 0a | 09 52 53 54 09 65 78 70 |8);.}.|.|.RST.exp|
|00005250| 72 65 73 73 69 6f 6e 0a | 09 09 7b 20 69 66 20 28 |ression.|..{ if (|
|00005260| 24 32 20 3e 20 37 20 7c | 7c 20 24 32 20 3c 20 30 |$2 > 7 ||| $2 < 0|
|00005270| 29 0a 09 09 09 65 72 72 | 5b 76 66 6c 61 67 5d 2b |)....err|[vflag]+|
|00005280| 2b 3b 0a 09 09 65 6d 69 | 74 28 31 2c 20 24 31 2d |+;...emi|t(1, $1-|
|00005290| 3e 69 5f 76 61 6c 75 65 | 20 2b 20 28 28 24 32 20 |>i_value| + (($2 |
|000052a0| 26 20 37 29 20 3c 3c 20 | 33 29 29 3b 0a 09 7d 0a |& 7) << |3));..}.|
|000052b0| 7c 0a 09 41 44 44 20 41 | 43 43 20 27 2c 27 20 65 ||..ADD A|CC ',' e|
|000052c0| 78 70 72 65 73 73 69 6f | 6e 0a 09 09 7b 20 65 6d |xpressio|n...{ em|
|000052d0| 69 74 31 28 30 33 30 36 | 2c 20 30 2c 20 24 34 2c |it1(0306|, 0, $4,|
|000052e0| 20 33 29 3b 20 7d 0a 7c | 0a 09 41 52 49 54 48 43 | 3); }.||..ARITHC|
|000052f0| 20 41 43 43 20 27 2c 27 | 20 65 78 70 72 65 73 73 | ACC ','| express|
|00005300| 69 6f 6e 0a 09 09 7b 20 | 65 6d 69 74 31 28 30 33 |ion...{ |emit1(03|
|00005310| 30 36 20 2b 20 28 24 31 | 2d 3e 69 5f 76 61 6c 75 |06 + ($1|->i_valu|
|00005320| 65 20 3c 3c 20 33 29 2c | 20 30 2c 20 24 34 2c 20 |e << 3),| 0, $4, |
|00005330| 33 29 3b 20 7d 0a 7c 0a | 09 4c 4f 47 49 43 41 4c |3); }.|.|.LOGICAL|
|00005340| 20 65 78 70 72 65 73 73 | 69 6f 6e 0a 09 09 7b 20 | express|ion...{ |
|00005350| 65 6d 69 74 31 28 30 33 | 30 36 20 7c 20 28 24 31 |emit1(03|06 | ($1|
|00005360| 2d 3e 69 5f 76 61 6c 75 | 65 20 3c 3c 20 33 29 2c |->i_valu|e << 3),|
|00005370| 20 30 2c 20 24 32 2c 20 | 33 29 3b 20 7d 0a 7c 0a | 0, $2, |3); }.|.|
|00005380| 09 4c 4f 47 49 43 41 4c | 20 41 43 43 20 27 2c 27 |.LOGICAL| ACC ','|
|00005390| 20 65 78 70 72 65 73 73 | 69 6f 6e 09 2f 2a 20 2d | express|ion./* -|
|000053a0| 63 64 6b 20 2a 2f 0a 09 | 09 7b 20 65 6d 69 74 31 |cdk */..|.{ emit1|
|000053b0| 28 30 33 30 36 20 7c 20 | 28 24 31 2d 3e 69 5f 76 |(0306 | |($1->i_v|
|000053c0| 61 6c 75 65 20 3c 3c 20 | 33 29 2c 20 30 2c 20 24 |alue << |3), 0, $|
|000053d0| 34 2c 20 33 29 3b 20 7d | 0a 7c 0a 09 41 44 44 20 |4, 3); }|.|..ADD |
|000053e0| 41 43 43 20 27 2c 27 20 | 72 65 67 0a 09 09 7b 20 |ACC ',' |reg...{ |
|000053f0| 65 6d 69 74 31 28 30 32 | 30 30 20 2b 20 28 24 34 |emit1(02|00 + ($4|
|00005400| 20 26 20 30 33 37 37 29 | 2c 20 24 34 2c 20 30 2c | & 0377)|, $4, 0,|
|00005410| 20 30 29 3b 20 7d 0a 7c | 0a 09 41 52 49 54 48 43 | 0); }.||..ARITHC|
|00005420| 20 41 43 43 20 27 2c 27 | 20 72 65 67 0a 09 09 7b | ACC ','| reg...{|
|00005430| 20 65 6d 69 74 31 28 30 | 32 30 30 20 2b 20 28 24 | emit1(0|200 + ($|
|00005440| 31 2d 3e 69 5f 76 61 6c | 75 65 20 3c 3c 20 33 29 |1->i_val|ue << 3)|
|00005450| 20 2b 20 28 24 34 20 26 | 20 30 33 37 37 29 2c 20 | + ($4 &| 0377), |
|00005460| 24 34 2c 20 30 2c 20 30 | 29 3b 20 7d 0a 7c 0a 09 |$4, 0, 0|); }.|..|
|00005470| 4c 4f 47 49 43 41 4c 20 | 72 65 67 0a 09 09 7b 20 |LOGICAL |reg...{ |
|00005480| 65 6d 69 74 31 28 30 32 | 30 30 20 2b 20 28 24 31 |emit1(02|00 + ($1|
|00005490| 2d 3e 69 5f 76 61 6c 75 | 65 20 3c 3c 20 33 29 20 |->i_valu|e << 3) |
|000054a0| 2b 20 28 24 32 20 26 20 | 30 33 37 37 29 2c 20 24 |+ ($2 & |0377), $|
|000054b0| 32 2c 20 30 2c 20 30 29 | 3b 20 7d 0a 7c 0a 09 4c |2, 0, 0)|; }.|..L|
|000054c0| 4f 47 49 43 41 4c 20 41 | 43 43 20 27 2c 27 20 72 |OGICAL A|CC ',' r|
|000054d0| 65 67 09 09 2f 2a 20 2d | 63 64 6b 20 2a 2f 0a 09 |eg../* -|cdk */..|
|000054e0| 09 7b 20 65 6d 69 74 31 | 28 30 32 30 30 20 2b 20 |.{ emit1|(0200 + |
|000054f0| 28 24 31 2d 3e 69 5f 76 | 61 6c 75 65 20 3c 3c 20 |($1->i_v|alue << |
|00005500| 33 29 20 2b 20 28 24 34 | 20 26 20 30 33 37 37 29 |3) + ($4| & 0377)|
|00005510| 2c 20 24 34 2c 20 30 2c | 20 30 29 3b 20 7d 0a 7c |, $4, 0,| 0); }.||
|00005520| 0a 09 53 48 49 46 54 20 | 72 65 67 0a 09 09 7b 20 |..SHIFT |reg...{ |
|00005530| 65 6d 69 74 31 28 30 31 | 34 35 34 30 30 20 2b 20 |emit1(01|45400 + |
|00005540| 28 24 31 2d 3e 69 5f 76 | 61 6c 75 65 20 3c 3c 20 |($1->i_v|alue << |
|00005550| 33 29 20 2b 20 28 24 32 | 20 26 20 30 33 37 37 29 |3) + ($2| & 0377)|
|00005560| 2c 20 24 32 2c 20 30 2c | 20 30 29 3b 20 7d 0a 7c |, $2, 0,| 0); }.||
|00005570| 0a 09 49 4e 43 44 45 43 | 09 72 65 67 0a 09 09 7b |..INCDEC|.reg...{|
|00005580| 20 65 6d 69 74 31 28 24 | 31 2d 3e 69 5f 76 61 6c | emit1($|1->i_val|
|00005590| 75 65 20 2b 20 28 28 24 | 32 20 26 20 30 33 37 37 |ue + (($|2 & 0377|
|000055a0| 29 20 3c 3c 20 33 29 20 | 2b 20 34 2c 20 24 32 2c |) << 3) |+ 4, $2,|
|000055b0| 20 30 2c 20 30 29 3b 20 | 7d 0a 7c 0a 09 41 52 49 | 0, 0); |}.|..ARI|
|000055c0| 54 48 43 20 48 4c 20 27 | 2c 27 20 62 63 64 65 68 |THC HL '|,' bcdeh|
|000055d0| 6c 73 70 0a 09 09 7b 20 | 69 66 20 28 24 31 2d 3e |lsp...{ |if ($1->|
|000055e0| 69 5f 76 61 6c 75 65 20 | 3d 3d 20 31 29 0a 09 09 |i_value |== 1)...|
|000055f0| 09 09 65 6d 69 74 28 32 | 2c 30 33 35 35 2c 30 31 |..emit(2|,0355,01|
|00005600| 31 32 2b 24 34 29 3b 0a | 09 09 09 65 6c 73 65 0a |12+$4);.|...else.|
|00005610| 09 09 09 09 65 6d 69 74 | 28 32 2c 30 33 35 35 2c |....emit|(2,0355,|
|00005620| 30 31 30 32 2b 24 34 29 | 3b 0a 09 09 7d 0a 7c 0a |0102+$4)|;...}.|.|
|00005630| 09 41 44 44 20 6d 61 72 | 20 27 2c 27 20 62 63 64 |.ADD mar| ',' bcd|
|00005640| 65 73 70 0a 09 09 7b 20 | 65 6d 69 74 64 61 64 28 |esp...{ |emitdad(|
|00005650| 24 32 2c 24 34 29 3b 20 | 7d 0a 7c 0a 09 41 44 44 |$2,$4); |}.|..ADD|
|00005660| 20 6d 61 72 20 27 2c 27 | 20 6d 61 72 0a 09 09 7b | mar ','| mar...{|
|00005670| 0a 09 09 09 69 66 20 28 | 24 32 20 21 3d 20 24 34 |....if (|$2 != $4|
|00005680| 29 20 7b 0a 09 09 09 09 | 66 70 72 69 6e 74 66 28 |) {.....|fprintf(|
|00005690| 73 74 64 65 72 72 2c 22 | 41 44 44 20 6d 61 72 2c |stderr,"|ADD mar,|
|000056a0| 20 6d 61 72 20 65 72 72 | 6f 72 5c 6e 22 29 3b 0a | mar err|or\n");.|
|000056b0| 09 09 09 09 65 72 72 5b | 66 66 6c 61 67 5d 2b 2b |....err[|fflag]++|
|000056c0| 3b 0a 09 09 09 7d 0a 09 | 09 09 65 6d 69 74 64 61 |;....}..|..emitda|
|000056d0| 64 28 24 32 2c 24 34 29 | 3b 0a 09 09 7d 0a 7c 0a |d($2,$4)|;...}.|.|
|000056e0| 09 49 4e 43 44 45 43 20 | 65 76 65 6e 72 65 67 0a |.INCDEC |evenreg.|
|000056f0| 09 09 7b 20 65 6d 69 74 | 31 28 28 24 31 2d 3e 69 |..{ emit|1(($1->i|
|00005700| 5f 76 61 6c 75 65 20 3c | 3c 20 33 29 20 2b 20 28 |_value <|< 3) + (|
|00005710| 24 32 20 26 20 30 33 37 | 37 29 20 2b 20 33 2c 20 |$2 & 037|7) + 3, |
|00005720| 24 32 2c 20 30 2c 20 31 | 29 3b 20 7d 0a 7c 0a 09 |$2, 0, 1|); }.|..|
|00005730| 50 55 53 48 50 4f 50 20 | 70 75 73 68 61 62 6c 65 |PUSHPOP |pushable|
|00005740| 0a 09 09 7b 20 65 6d 69 | 74 31 28 24 31 2d 3e 69 |...{ emi|t1($1->i|
|00005750| 5f 76 61 6c 75 65 20 2b | 20 28 24 32 20 26 20 30 |_value +| ($2 & 0|
|00005760| 33 37 37 29 2c 20 24 32 | 2c 20 30 2c 20 31 29 3b |377), $2|, 0, 1);|
|00005770| 20 7d 0a 7c 0a 09 42 49 | 54 20 65 78 70 72 65 73 | }.|..BI|T expres|
|00005780| 73 69 6f 6e 20 27 2c 27 | 20 72 65 67 0a 09 09 7b |sion ','| reg...{|
|00005790| 0a 09 09 09 69 66 20 28 | 24 32 20 3c 20 30 20 7c |....if (|$2 < 0 ||
|000057a0| 7c 20 24 32 20 3e 20 37 | 29 0a 09 09 09 09 65 72 || $2 > 7|).....er|
|000057b0| 72 5b 76 66 6c 61 67 5d | 2b 2b 3b 0a 09 09 09 65 |r[vflag]|++;....e|
|000057c0| 6d 69 74 31 28 24 31 2d | 3e 69 5f 76 61 6c 75 65 |mit1($1-|>i_value|
|000057d0| 20 2b 20 28 28 24 32 20 | 26 20 37 29 20 3c 3c 20 | + (($2 |& 7) << |
|000057e0| 33 29 20 2b 20 28 24 34 | 20 26 20 30 33 37 37 29 |3) + ($4| & 0377)|
|000057f0| 2c 20 24 34 2c 20 30 2c | 20 30 29 3b 0a 09 09 7d |, $4, 0,| 0);...}|
|00005800| 0a 7c 0a 09 4a 50 20 63 | 6f 6e 64 69 74 69 6f 6e |.|..JP c|ondition|
|00005810| 20 27 2c 27 20 65 78 70 | 72 65 73 73 69 6f 6e 0a | ',' exp|ression.|
|00005820| 09 09 7b 20 65 6d 69 74 | 28 33 2c 20 30 33 30 32 |..{ emit|(3, 0302|
|00005830| 20 2b 20 24 32 2c 20 24 | 34 2c 20 24 34 20 3e 3e | + $2, $|4, $4 >>|
|00005840| 20 38 29 3b 20 7d 0a 7c | 0a 09 4a 50 20 27 28 27 | 8); }.||..JP '('|
|00005850| 20 6d 61 72 20 27 29 27 | 0a 09 09 7b 20 65 6d 69 | mar ')'|...{ emi|
|00005860| 74 31 28 30 33 35 31 2c | 20 24 33 2c 20 30 2c 20 |t1(0351,| $3, 0, |
|00005870| 31 29 3b 20 7d 0a 7c 0a | 09 43 41 4c 4c 20 63 6f |1); }.|.|.CALL co|
|00005880| 6e 64 69 74 69 6f 6e 20 | 27 2c 27 20 65 78 70 72 |ndition |',' expr|
|00005890| 65 73 73 69 6f 6e 0a 09 | 09 7b 20 65 6d 69 74 28 |ession..|.{ emit(|
|000058a0| 33 2c 20 30 33 30 34 20 | 2b 20 24 32 2c 20 24 34 |3, 0304 |+ $2, $4|
|000058b0| 2c 20 24 34 20 3e 3e 20 | 38 29 3b 20 7d 0a 7c 0a |, $4 >> |8); }.|.|
|000058c0| 09 4a 52 20 65 78 70 72 | 65 73 73 69 6f 6e 0a 09 |.JR expr|ession..|
|000058d0| 09 7b 20 65 6d 69 74 6a | 72 28 30 33 30 2c 24 32 |.{ emitj|r(030,$2|
|000058e0| 29 3b 20 7d 0a 7c 0a 09 | 4a 52 20 73 70 63 6f 6e |); }.|..|JR spcon|
|000058f0| 64 69 74 69 6f 6e 20 27 | 2c 27 20 65 78 70 72 65 |dition '|,' expre|
|00005900| 73 73 69 6f 6e 0a 09 09 | 7b 20 65 6d 69 74 6a 72 |ssion...|{ emitjr|
|00005910| 28 24 31 2d 3e 69 5f 76 | 61 6c 75 65 20 2b 20 24 |($1->i_v|alue + $|
|00005920| 32 2c 20 24 34 29 3b 20 | 7d 0a 7c 0a 09 44 4a 4e |2, $4); |}.|..DJN|
|00005930| 5a 20 65 78 70 72 65 73 | 73 69 6f 6e 0a 09 09 7b |Z expres|sion...{|
|00005940| 20 65 6d 69 74 6a 72 28 | 24 31 2d 3e 69 5f 76 61 | emitjr(|$1->i_va|
|00005950| 6c 75 65 2c 20 24 32 29 | 3b 20 7d 0a 7c 0a 09 52 |lue, $2)|; }.|..R|
|00005960| 45 54 0a 09 09 7b 20 65 | 6d 69 74 28 31 2c 20 24 |ET...{ e|mit(1, $|
|00005970| 31 2d 3e 69 5f 76 61 6c | 75 65 29 3b 20 7d 0a 7c |1->i_val|ue); }.||
|00005980| 0a 09 52 45 54 20 63 6f | 6e 64 69 74 69 6f 6e 0a |..RET co|ndition.|
|00005990| 09 09 7b 20 65 6d 69 74 | 28 31 2c 20 30 33 30 30 |..{ emit|(1, 0300|
|000059a0| 20 2b 20 24 32 29 3b 20 | 7d 0a 7c 0a 09 4c 44 20 | + $2); |}.|..LD |
|000059b0| 72 65 67 20 27 2c 27 20 | 72 65 67 0a 09 09 7b 0a |reg ',' |reg...{.|
|000059c0| 09 09 09 69 66 20 28 28 | 24 32 20 26 20 30 33 37 |...if ((|$2 & 037|
|000059d0| 37 29 20 3d 3d 20 36 20 | 26 26 20 28 24 34 20 26 |7) == 6 |&& ($4 &|
|000059e0| 20 30 33 37 37 29 20 3d | 3d 20 36 29 20 7b 0a 09 | 0377) =|= 6) {..|
|000059f0| 09 09 09 66 70 72 69 6e | 74 66 28 73 74 64 65 72 |...fprin|tf(stder|
|00005a00| 72 2c 22 4c 44 20 72 65 | 67 2c 20 72 65 67 20 65 |r,"LD re|g, reg e|
|00005a10| 72 72 6f 72 5c 6e 22 29 | 3b 0a 09 09 09 09 65 72 |rror\n")|;.....er|
|00005a20| 72 5b 66 66 6c 61 67 5d | 2b 2b 3b 0a 09 09 09 7d |r[fflag]|++;....}|
|00005a30| 0a 09 09 09 65 6d 69 74 | 31 28 30 31 30 30 20 2b |....emit|1(0100 +|
|00005a40| 20 28 28 24 32 20 26 20 | 37 29 20 3c 3c 20 33 29 | (($2 & |7) << 3)|
|00005a50| 20 2b 20 28 24 34 20 26 | 20 37 29 2c 24 32 20 7c | + ($4 &| 7),$2 ||
|00005a60| 20 24 34 2c 20 30 2c 20 | 30 29 3b 0a 09 09 7d 0a | $4, 0, |0);...}.|
|00005a70| 7c 0a 09 4c 44 20 72 65 | 67 20 27 2c 27 20 65 78 ||..LD re|g ',' ex|
|00005a80| 70 72 65 73 73 69 6f 6e | 0a 09 09 7b 20 65 6d 69 |pression|...{ emi|
|00005a90| 74 31 28 36 20 2b 20 28 | 28 24 32 20 26 20 30 33 |t1(6 + (|($2 & 03|
|00005aa0| 37 37 29 20 3c 3c 20 33 | 29 2c 20 24 32 2c 20 24 |77) << 3|), $2, $|
|00005ab0| 34 2c 20 32 29 3b 20 7d | 0a 7c 0a 09 4c 44 20 72 |4, 2); }|.|..LD r|
|00005ac0| 65 67 20 27 2c 27 20 27 | 28 27 20 52 50 20 27 29 |eg ',' '|(' RP ')|
|00005ad0| 27 0a 09 09 7b 09 69 66 | 20 28 24 32 20 21 3d 20 |'...{.if| ($2 != |
|00005ae0| 37 29 20 7b 0a 09 09 09 | 09 66 70 72 69 6e 74 66 |7) {....|.fprintf|
|00005af0| 28 73 74 64 65 72 72 2c | 22 4c 44 20 72 65 67 2c |(stderr,|"LD reg,|
|00005b00| 20 28 52 50 29 20 65 72 | 72 6f 72 5c 6e 22 29 3b | (RP) er|ror\n");|
|00005b10| 0a 09 09 09 09 65 72 72 | 5b 66 66 6c 61 67 5d 2b |.....err|[fflag]+|
|00005b20| 2b 3b 0a 09 09 09 7d 0a | 09 09 09 65 6c 73 65 20 |+;....}.|...else |
|00005b30| 65 6d 69 74 28 31 2c 20 | 30 31 32 20 2b 20 24 35 |emit(1, |012 + $5|
|00005b40| 2d 3e 69 5f 76 61 6c 75 | 65 29 3b 0a 09 09 7d 0a |->i_valu|e);...}.|
|00005b50| 7c 0a 09 4c 44 20 72 65 | 67 20 27 2c 27 20 70 61 ||..LD re|g ',' pa|
|00005b60| 72 65 6e 65 78 70 72 0a | 09 09 7b 0a 09 09 09 69 |renexpr.|..{....i|
|00005b70| 66 20 28 24 32 20 21 3d | 20 37 29 20 7b 0a 09 09 |f ($2 !=| 7) {...|
|00005b80| 09 09 66 70 72 69 6e 74 | 66 28 73 74 64 65 72 72 |..fprint|f(stderr|
|00005b90| 2c 22 4c 44 20 72 65 67 | 2c 20 28 65 78 70 72 29 |,"LD reg|, (expr)|
|00005ba0| 20 65 72 72 6f 72 5c 6e | 22 29 3b 0a 09 09 09 09 | error\n|");.....|
|00005bb0| 65 72 72 5b 66 66 6c 61 | 67 5d 2b 2b 3b 0a 09 09 |err[ffla|g]++;...|
|00005bc0| 09 7d 0a 09 09 09 65 6c | 73 65 20 65 6d 69 74 28 |.}....el|se emit(|
|00005bd0| 33 2c 20 30 37 32 2c 20 | 24 34 2c 20 24 34 20 3e |3, 072, |$4, $4 >|
|00005be0| 3e 20 38 29 3b 0a 09 09 | 7d 0a 7c 0a 09 4c 44 20 |> 8);...|}.|..LD |
|00005bf0| 27 28 27 20 52 50 20 27 | 29 27 20 27 2c 27 20 41 |'(' RP '|)' ',' A|
|00005c00| 43 43 0a 09 09 7b 20 65 | 6d 69 74 28 31 2c 20 32 |CC...{ e|mit(1, 2|
|00005c10| 20 2b 20 24 33 2d 3e 69 | 5f 76 61 6c 75 65 29 3b | + $3->i|_value);|
|00005c20| 20 7d 0a 7c 0a 09 4c 44 | 20 70 61 72 65 6e 65 78 | }.|..LD| parenex|
|00005c30| 70 72 20 27 2c 27 20 41 | 43 43 0a 09 09 7b 20 65 |pr ',' A|CC...{ e|
|00005c40| 6d 69 74 28 33 2c 20 30 | 36 32 2c 20 24 32 2c 20 |mit(3, 0|62, $2, |
|00005c50| 24 32 20 3e 3e 20 38 29 | 3b 20 7d 0a 7c 0a 09 4c |$2 >> 8)|; }.|..L|
|00005c60| 44 20 72 65 67 20 27 2c | 27 20 4d 49 53 43 52 45 |D reg ',|' MISCRE|
|00005c70| 47 0a 09 09 7b 0a 09 09 | 09 69 66 20 28 24 32 20 |G...{...|.if ($2 |
|00005c80| 21 3d 20 37 29 20 7b 0a | 09 09 09 09 66 70 72 69 |!= 7) {.|....fpri|
|00005c90| 6e 74 66 28 73 74 64 65 | 72 72 2c 22 4c 44 20 72 |ntf(stde|rr,"LD r|
|00005ca0| 65 67 2c 20 4d 49 53 43 | 52 45 47 20 65 72 72 6f |eg, MISC|REG erro|
|00005cb0| 72 5c 6e 22 29 3b 0a 09 | 09 09 09 65 72 72 5b 66 |r\n");..|...err[f|
|00005cc0| 66 6c 61 67 5d 2b 2b 3b | 0a 09 09 09 7d 0a 09 09 |flag]++;|....}...|
|00005cd0| 09 65 6c 73 65 20 65 6d | 69 74 28 32 2c 20 30 33 |.else em|it(2, 03|
|00005ce0| 35 35 2c 20 30 31 32 37 | 20 2b 20 24 34 2d 3e 69 |55, 0127| + $4->i|
|00005cf0| 5f 76 61 6c 75 65 29 3b | 0a 09 09 7d 0a 7c 0a 09 |_value);|...}.|..|
|00005d00| 4c 44 20 4d 49 53 43 52 | 45 47 20 27 2c 27 20 41 |LD MISCR|EG ',' A|
|00005d10| 43 43 0a 09 09 7b 20 65 | 6d 69 74 28 32 2c 20 30 |CC...{ e|mit(2, 0|
|00005d20| 33 35 35 2c 20 30 31 30 | 37 20 2b 20 24 32 2d 3e |355, 010|7 + $2->|
|00005d30| 69 5f 76 61 6c 75 65 29 | 3b 20 7d 0a 7c 0a 09 4c |i_value)|; }.|..L|
|00005d40| 44 20 65 76 65 6e 72 65 | 67 20 27 2c 27 20 6c 78 |D evenre|g ',' lx|
|00005d50| 65 78 70 72 65 73 73 69 | 6f 6e 0a 09 09 7b 20 65 |expressi|on...{ e|
|00005d60| 6d 69 74 31 28 31 20 2b | 20 28 24 32 20 26 20 30 |mit1(1 +| ($2 & 0|
|00005d70| 36 30 29 2c 20 24 32 2c | 20 24 34 2c 20 35 29 3b |60), $2,| $4, 5);|
|00005d80| 20 7d 0a 7c 0a 09 4c 44 | 20 65 76 65 6e 72 65 67 | }.|..LD| evenreg|
|00005d90| 20 27 2c 27 20 70 61 72 | 65 6e 65 78 70 72 0a 09 | ',' par|enexpr..|
|00005da0| 09 7b 0a 09 09 09 69 66 | 20 28 28 24 32 20 26 20 |.{....if| (($2 & |
|00005db0| 30 36 30 29 20 3d 3d 20 | 30 34 30 29 0a 09 09 09 |060) == |040)....|
|00005dc0| 09 65 6d 69 74 31 28 30 | 35 32 2c 20 24 32 2c 20 |.emit1(0|52, $2, |
|00005dd0| 24 34 2c 20 35 29 3b 0a | 09 09 09 65 6c 73 65 0a |$4, 5);.|...else.|
|00005de0| 09 09 09 09 65 6d 69 74 | 28 34 2c 20 30 33 35 35 |....emit|(4, 0355|
|00005df0| 2c 20 30 31 31 33 20 2b | 20 24 32 2c 20 24 34 2c |, 0113 +| $2, $4,|
|00005e00| 20 24 34 20 3e 3e 20 38 | 29 3b 0a 09 09 7d 0a 7c | $4 >> 8|);...}.||
|00005e10| 0a 09 4c 44 20 70 61 72 | 65 6e 65 78 70 72 20 27 |..LD par|enexpr '|
|00005e20| 2c 27 20 65 76 65 6e 72 | 65 67 0a 09 09 7b 0a 09 |,' evenr|eg...{..|
|00005e30| 09 09 69 66 20 28 28 24 | 34 20 26 20 30 36 30 29 |..if (($|4 & 060)|
|00005e40| 20 3d 3d 20 30 34 30 29 | 0a 09 09 09 09 65 6d 69 | == 040)|.....emi|
|00005e50| 74 31 28 30 34 32 2c 20 | 24 34 2c 20 24 32 2c 20 |t1(042, |$4, $2, |
|00005e60| 35 29 3b 0a 09 09 09 65 | 6c 73 65 0a 09 09 09 09 |5);....e|lse.....|
|00005e70| 65 6d 69 74 28 34 2c 20 | 30 33 35 35 2c 20 30 31 |emit(4, |0355, 01|
|00005e80| 30 33 20 2b 20 24 34 2c | 20 24 32 2c 20 24 32 20 |03 + $4,| $2, $2 |
|00005e90| 3e 3e 20 38 29 3b 0a 09 | 09 7d 0a 7c 0a 09 4c 44 |>> 8);..|.}.|..LD|
|00005ea0| 20 65 76 65 6e 72 65 67 | 20 27 2c 27 20 6d 61 72 | evenreg| ',' mar|
|00005eb0| 0a 09 09 7b 0a 09 09 09 | 69 66 20 28 24 32 20 21 |...{....|if ($2 !|
|00005ec0| 3d 20 30 36 30 29 20 7b | 0a 09 09 09 09 66 70 72 |= 060) {|.....fpr|
|00005ed0| 69 6e 74 66 28 73 74 64 | 65 72 72 2c 22 4c 44 20 |intf(std|err,"LD |
|00005ee0| 65 76 65 6e 72 65 67 20 | 65 72 72 6f 72 5c 6e 22 |evenreg |error\n"|
|00005ef0| 29 3b 0a 09 09 09 09 65 | 72 72 5b 66 66 6c 61 67 |);.....e|rr[fflag|
|00005f00| 5d 2b 2b 3b 0a 09 09 09 | 7d 0a 09 09 09 65 6c 73 |]++;....|}....els|
|00005f10| 65 0a 09 09 09 09 65 6d | 69 74 31 28 30 33 37 31 |e.....em|it1(0371|
|00005f20| 2c 20 24 34 2c 20 30 2c | 20 31 29 3b 0a 09 09 7d |, $4, 0,| 1);...}|
|00005f30| 0a 7c 0a 09 45 58 20 52 | 50 20 27 2c 27 20 48 4c |.|..EX R|P ',' HL|
|00005f40| 0a 09 09 7b 0a 09 09 09 | 69 66 20 28 24 32 2d 3e |...{....|if ($2->|
|00005f50| 69 5f 76 61 6c 75 65 20 | 21 3d 20 30 32 30 29 20 |i_value |!= 020) |
|00005f60| 7b 0a 09 09 09 09 66 70 | 72 69 6e 74 66 28 73 74 |{.....fp|rintf(st|
|00005f70| 64 65 72 72 2c 22 45 58 | 20 52 50 2c 20 48 4c 20 |derr,"EX| RP, HL |
|00005f80| 65 72 72 6f 72 5c 6e 22 | 29 3b 0a 09 09 09 09 65 |error\n"|);.....e|
|00005f90| 72 72 5b 66 66 6c 61 67 | 5d 2b 2b 3b 0a 09 09 09 |rr[fflag|]++;....|
|00005fa0| 7d 0a 09 09 09 65 6c 73 | 65 0a 09 09 09 09 65 6d |}....els|e.....em|
|00005fb0| 69 74 28 31 2c 20 30 33 | 35 33 29 3b 0a 09 09 7d |it(1, 03|53);...}|
|00005fc0| 0a 7c 0a 09 45 58 20 41 | 46 20 27 2c 27 20 41 46 |.|..EX A|F ',' AF|
|00005fd0| 20 73 65 74 71 66 20 27 | 5c 27 27 20 63 6c 72 71 | setqf '|\'' clrq|
|00005fe0| 66 0a 09 09 7b 20 65 6d | 69 74 28 31 2c 20 30 31 |f...{ em|it(1, 01|
|00005ff0| 30 29 3b 20 7d 0a 7c 0a | 09 45 58 20 27 28 27 20 |0); }.|.|.EX '(' |
|00006000| 53 50 20 27 29 27 20 27 | 2c 27 20 6d 61 72 0a 09 |SP ')' '|,' mar..|
|00006010| 09 7b 20 65 6d 69 74 31 | 28 30 33 34 33 2c 20 24 |.{ emit1|(0343, $|
|00006020| 36 2c 20 30 2c 20 31 29 | 3b 20 7d 0a 7c 0a 09 49 |6, 0, 1)|; }.|..I|
|00006030| 4e 20 72 65 61 6c 72 65 | 67 20 27 2c 27 20 70 61 |N realre|g ',' pa|
|00006040| 72 65 6e 65 78 70 72 0a | 09 09 7b 0a 09 09 09 69 |renexpr.|..{....i|
|00006050| 66 20 28 24 32 20 21 3d | 20 37 29 20 7b 0a 09 09 |f ($2 !=| 7) {...|
|00006060| 09 09 66 70 72 69 6e 74 | 66 28 73 74 64 65 72 72 |..fprint|f(stderr|
|00006070| 2c 22 49 4e 20 72 65 67 | 2c 20 28 65 78 70 72 29 |,"IN reg|, (expr)|
|00006080| 20 65 72 72 6f 72 5c 6e | 22 29 3b 0a 09 09 09 09 | error\n|");.....|
|00006090| 65 72 72 5b 66 66 6c 61 | 67 5d 2b 2b 3b 0a 09 09 |err[ffla|g]++;...|
|000060a0| 09 7d 0a 09 09 09 65 6c | 73 65 09 7b 0a 09 09 09 |.}....el|se.{....|
|000060b0| 09 69 66 20 28 24 34 20 | 3c 20 30 20 7c 7c 20 24 |.if ($4 |< 0 || $|
|000060c0| 34 20 3e 20 32 35 35 29 | 0a 09 09 09 09 09 65 72 |4 > 255)|......er|
|000060d0| 72 5b 76 66 6c 61 67 5d | 2b 2b 3b 0a 09 09 09 09 |r[vflag]|++;.....|
|000060e0| 65 6d 69 74 28 32 2c 20 | 24 31 2d 3e 69 5f 76 61 |emit(2, |$1->i_va|
|000060f0| 6c 75 65 2c 20 24 34 29 | 3b 0a 09 09 09 7d 0a 09 |lue, $4)|;....}..|
|00006100| 09 7d 0a 7c 0a 09 49 4e | 20 72 65 61 6c 72 65 67 |.}.|..IN| realreg|
|00006110| 20 27 2c 27 20 27 28 27 | 20 43 20 27 29 27 0a 09 | ',' '('| C ')'..|
|00006120| 09 7b 20 65 6d 69 74 28 | 32 2c 20 30 33 35 35 2c |.{ emit(|2, 0355,|
|00006130| 20 30 31 30 30 20 2b 20 | 28 24 32 20 3c 3c 20 33 | 0100 + |($2 << 3|
|00006140| 29 29 3b 20 7d 0a 7c 0a | 09 49 4e 20 46 20 27 2c |)); }.|.|.IN F ',|
|00006150| 27 20 27 28 27 20 43 20 | 27 29 27 0a 09 09 7b 20 |' '(' C |')'...{ |
|00006160| 65 6d 69 74 28 32 2c 20 | 30 33 35 35 2c 20 30 31 |emit(2, |0355, 01|
|00006170| 36 30 29 3b 20 7d 0a 7c | 0a 09 4f 55 54 20 70 61 |60); }.||..OUT pa|
|00006180| 72 65 6e 65 78 70 72 20 | 27 2c 27 20 41 43 43 0a |renexpr |',' ACC.|
|00006190| 09 09 7b 0a 09 09 09 69 | 66 20 28 24 32 20 3c 20 |..{....i|f ($2 < |
|000061a0| 30 20 7c 7c 20 24 32 20 | 3e 20 32 35 35 29 0a 09 |0 || $2 |> 255)..|
|000061b0| 09 09 09 65 72 72 5b 76 | 66 6c 61 67 5d 2b 2b 3b |...err[v|flag]++;|
|000061c0| 0a 09 09 09 65 6d 69 74 | 28 32 2c 20 24 31 2d 3e |....emit|(2, $1->|
|000061d0| 69 5f 76 61 6c 75 65 2c | 20 24 32 29 3b 0a 09 09 |i_value,| $2);...|
|000061e0| 7d 0a 7c 0a 09 4f 55 54 | 20 27 28 27 20 43 20 27 |}.|..OUT| '(' C '|
|000061f0| 29 27 20 27 2c 27 20 72 | 65 61 6c 72 65 67 0a 09 |)' ',' r|ealreg..|
|00006200| 09 7b 20 65 6d 69 74 28 | 32 2c 20 30 33 35 35 2c |.{ emit(|2, 0355,|
|00006210| 20 30 31 30 31 20 2b 20 | 28 24 36 20 3c 3c 20 33 | 0101 + |($6 << 3|
|00006220| 29 29 3b 20 7d 0a 7c 0a | 09 49 4d 20 65 78 70 72 |)); }.|.|.IM expr|
|00006230| 65 73 73 69 6f 6e 0a 09 | 09 7b 0a 09 09 09 69 66 |ession..|.{....if|
|00006240| 20 28 24 32 20 3e 20 32 | 20 7c 7c 20 24 32 20 3c | ($2 > 2| || $2 <|
|00006250| 20 30 29 0a 09 09 09 09 | 65 72 72 5b 76 66 6c 61 | 0).....|err[vfla|
|00006260| 67 5d 2b 2b 3b 0a 09 09 | 09 65 6c 73 65 0a 09 09 |g]++;...|.else...|
|00006270| 09 09 65 6d 69 74 28 32 | 2c 20 24 31 2d 3e 69 5f |..emit(2|, $1->i_|
|00006280| 76 61 6c 75 65 20 3e 3e | 20 38 2c 20 24 31 2d 3e |value >>| 8, $1->|
|00006290| 69 5f 76 61 6c 75 65 20 | 2b 20 28 28 24 32 20 2b |i_value |+ (($2 +|
|000062a0| 20 28 24 32 20 3e 20 30 | 29 29 20 3c 3c 20 33 29 | ($2 > 0|)) << 3)|
|000062b0| 29 3b 0a 09 09 7d 0a 7c | 0a 09 50 48 41 53 45 20 |);...}.||..PHASE |
|000062c0| 65 78 70 72 65 73 73 69 | 6f 6e 0a 09 09 7b 0a 09 |expressi|on...{..|
|000062d0| 09 09 69 66 20 28 70 68 | 61 73 65 66 6c 61 67 29 |..if (ph|aseflag)|
|000062e0| 20 7b 0a 09 09 09 09 65 | 72 72 5b 6f 66 6c 61 67 | {.....e|rr[oflag|
|000062f0| 5d 2b 2b 3b 0a 09 09 09 | 7d 20 65 6c 73 65 20 7b |]++;....|} else {|
|00006300| 0a 09 09 09 09 70 68 61 | 73 65 66 6c 61 67 20 3d |.....pha|seflag =|
|00006310| 20 31 3b 0a 09 09 09 09 | 70 68 64 6f 6c 6c 61 72 | 1;.....|phdollar|
|00006320| 20 3d 20 64 6f 6c 6c 61 | 72 73 69 67 6e 3b 0a 09 | = dolla|rsign;..|
|00006330| 09 09 09 64 6f 6c 6c 61 | 72 73 69 67 6e 20 3d 20 |...dolla|rsign = |
|00006340| 24 32 3b 0a 09 09 09 09 | 70 68 62 65 67 69 6e 20 |$2;.....|phbegin |
|00006350| 3d 20 64 6f 6c 6c 61 72 | 73 69 67 6e 3b 0a 09 09 |= dollar|sign;...|
|00006360| 09 7d 0a 09 09 7d 0a 7c | 0a 09 44 45 50 48 41 53 |.}...}.||..DEPHAS|
|00006370| 45 0a 09 09 7b 0a 09 09 | 09 69 66 20 28 21 70 68 |E...{...|.if (!ph|
|00006380| 61 73 65 66 6c 61 67 29 | 20 7b 0a 09 09 09 09 65 |aseflag)| {.....e|
|00006390| 72 72 5b 6f 66 6c 61 67 | 5d 2b 2b 3b 0a 09 09 09 |rr[oflag|]++;....|
|000063a0| 7d 20 65 6c 73 65 20 7b | 0a 09 09 09 09 70 68 61 |} else {|.....pha|
|000063b0| 73 65 66 6c 61 67 20 3d | 20 30 3b 0a 09 09 09 09 |seflag =| 0;.....|
|000063c0| 64 6f 6c 6c 61 72 73 69 | 67 6e 20 3d 20 70 68 64 |dollarsi|gn = phd|
|000063d0| 6f 6c 6c 61 72 20 2b 20 | 64 6f 6c 6c 61 72 73 69 |ollar + |dollarsi|
|000063e0| 67 6e 20 2d 20 70 68 62 | 65 67 69 6e 3b 0a 09 09 |gn - phb|egin;...|
|000063f0| 09 7d 0a 09 09 7d 0a 7c | 0a 09 4f 52 47 20 65 78 |.}...}.||..ORG ex|
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.