	.file	"cpu.c"
	.version	"01.01"
gcc2_compiled.:
.section	.rodata
.LC0:
	.string	"$Id: cpu.c,v 1.11 1996/06/30 23:30:28 david Exp $"
.data
	.align 4
	.type	 rcsid,@object
	.size	 rcsid,4
rcsid:
	.long .LC0
	.align 4
	.type	 ram_below,@object
	.size	 ram_below,4
ram_below:
	.long 40960
	.align 4
	.type	 ram_above,@object
	.size	 ram_above,4
ram_above:
	.long 65535
.text
	.align 16
.globl CPU_GetStatus
	.type	 CPU_GetStatus,@function
CPU_GetStatus:
	pushl %ebp
	movl %esp,%ebp
	cmpb $0,N
	je .L2
	orb $128,regP
	jmp .L3
	.align 16
.L2:
	andb $127,regP
.L3:
	cmpb $0,Z
	je .L4
	andb $253,regP
	jmp .L5
	.align 16
.L4:
	orb $2,regP
.L5:
	cmpb $0,V
	je .L6
	orb $64,regP
	jmp .L7
	.align 16
.L6:
	andb $191,regP
.L7:
	cmpb $0,C
	je .L8
	orb $1,regP
	jmp .L9
	.align 16
.L8:
	andb $254,regP
.L9:
.L1:
	movl %ebp,%esp
	popl %ebp
	ret
.Lfe1:
	.size	 CPU_GetStatus,.Lfe1-CPU_GetStatus
	.align 16
.globl CPU_PutStatus
	.type	 CPU_PutStatus,@function
CPU_PutStatus:
	pushl %ebp
	movl %esp,%ebp
	movb regP,%al
	andb $128,%al
	testb %al,%al
	je .L11
	movb $128,N
	jmp .L12
	.align 16
.L11:
	movb $0,N
.L12:
	movb regP,%al
	andb $2,%al
	testb %al,%al
	je .L13
	movb $0,Z
	jmp .L14
	.align 16
.L13:
	movb $1,Z
.L14:
	movb regP,%al
	andb $64,%al
	testb %al,%al
	je .L15
	movb $1,V
	jmp .L16
	.align 16
.L15:
	movb $0,V
.L16:
	movb regP,%al
	andb $1,%al
	testb %al,%al
	je .L17
	movb $1,C
	jmp .L18
	.align 16
.L17:
	movb $0,C
.L18:
.L10:
	movl %ebp,%esp
	popl %ebp
	ret
.Lfe2:
	.size	 CPU_PutStatus,.Lfe2-CPU_PutStatus
	.align 16
.globl CPU_Reset
	.type	 CPU_Reset,@function
CPU_Reset:
	pushl %ebp
	movl %esp,%ebp
	subl $16,%esp
	pushl %edi
	pushl %esi
	pushl %ebx
	nop
	movl $0,-4(%ebp)
.L20:
	cmpl $255,-4(%ebp)
	jle .L23
	jmp .L21
	.align 16
.L23:
	movl -4(%ebp),%eax
	addl $BCDtoDEC,%eax
	movl %eax,-8(%ebp)
	movl -4(%ebp),%ecx
	sarl $4,%ecx
	movl %ecx,%edx
	andl $15,%edx
	movl %edx,-12(%ebp)
	movl -12(%ebp),%ecx
	sall $3,%ecx
	addl -12(%ebp),%ecx
	movl -12(%ebp),%esi
	addl %ecx,%esi
	movl %esi,-12(%ebp)
	movb -4(%ebp),%cl
	andb $15,%cl
	movb -12(%ebp),%al
	addb %cl,%al
	movl -8(%ebp),%edx
	movb %al,(%edx)
	movl -4(%ebp),%esi
	addl $DECtoBCD,%esi
	movl %esi,-8(%ebp)
	movl -4(%ebp),%ecx
	movl %ecx,%eax
	movl $100,%esi
	cltd
	idivl %esi
	movl %edx,%edi
	movl %eax,-12(%ebp)
	movl %edi,%eax
	movl $10,%esi
	cltd
	idivl %esi
	movl %edx,%ecx
	movl %eax,-16(%ebp)
	movb -16(%ebp),%al
	salb $4,%al
	movb %al,-12(%ebp)
	movl -4(%ebp),%edi
	movl %edi,%eax
	movl $10,%esi
	cltd
	idivl %esi
	movl %edx,-16(%ebp)
	movl %eax,%ecx
	movb -16(%ebp),%al
	orb -12(%ebp),%al
	movl -8(%ebp),%edx
	movb %al,(%edx)
.L22:
	incl -4(%ebp)
	jmp .L20
	.align 16
.L21:
	movl $0,IRQ
	movb $32,regP
	movb $255,regS
	cmpb $2,attrib+65533
	jne .L24
	pushl $65533
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,-8(%ebp)
	movl -8(%ebp),%ebx
	sall $8,%ebx
	jmp .L25
	.align 16
.L24:
	movzbl memory+65533,%ebx
	sall $8,%ebx
.L25:
	cmpb $2,attrib+65532
	jne .L26
	pushl $65532
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,-8(%ebp)
	movl -8(%ebp),%esi
	orl %ebx,%esi
	movl %esi,-12(%ebp)
	movw -12(%ebp),%ax
	movw %ax,-8(%ebp)
	jmp .L27
	.align 16
.L26:
	movzbl memory+65532,%edx
	movl %edx,-12(%ebp)
	movl -12(%ebp),%ecx
	orl %ebx,%ecx
	movw %cx,-8(%ebp)
.L27:
	movw -8(%ebp),%si
	movw %si,regPC
.L19:
	leal -28(%ebp),%esp
	popl %ebx
	popl %esi
	popl %edi
	movl %ebp,%esp
	popl %ebp
	ret
.Lfe3:
	.size	 CPU_Reset,.Lfe3-CPU_Reset
	.align 16
.globl SetRAM
	.type	 SetRAM,@function
SetRAM:
	pushl %ebp
	movl %esp,%ebp
	subl $4,%esp
	nop
	movl 8(%ebp),%eax
	movl %eax,-4(%ebp)
.L29:
	movl -4(%ebp),%eax
	cmpl %eax,12(%ebp)
	jge .L32
	jmp .L30
	.align 16
.L32:
	movl -4(%ebp),%eax
	addl $attrib,%eax
	movb $0,(%eax)
.L31:
	incl -4(%ebp)
	jmp .L29
	.align 16
.L30:
.L28:
	movl %ebp,%esp
	popl %ebp
	ret
.Lfe4:
	.size	 SetRAM,.Lfe4-SetRAM
	.align 16
.globl SetROM
	.type	 SetROM,@function
SetROM:
	pushl %ebp
	movl %esp,%ebp
	subl $4,%esp
	nop
	movl 8(%ebp),%eax
	movl %eax,-4(%ebp)
.L34:
	movl -4(%ebp),%eax
	cmpl %eax,12(%ebp)
	jge .L37
	jmp .L35
	.align 16
.L37:
	movl -4(%ebp),%eax
	addl $attrib,%eax
	movb $1,(%eax)
.L36:
	incl -4(%ebp)
	jmp .L34
	.align 16
.L35:
.L33:
	movl %ebp,%esp
	popl %ebp
	ret
.Lfe5:
	.size	 SetROM,.Lfe5-SetROM
	.align 16
.globl SetHARDWARE
	.type	 SetHARDWARE,@function
SetHARDWARE:
	pushl %ebp
	movl %esp,%ebp
	subl $4,%esp
	nop
	movl 8(%ebp),%eax
	movl %eax,-4(%ebp)
.L39:
	movl -4(%ebp),%eax
	cmpl %eax,12(%ebp)
	jge .L42
	jmp .L40
	.align 16
.L42:
	movl -4(%ebp),%eax
	addl $attrib,%eax
	movb $2,(%eax)
.L41:
	incl -4(%ebp)
	jmp .L39
	.align 16
.L40:
.L38:
	movl %ebp,%esp
	popl %ebp
	ret
.Lfe6:
	.size	 SetHARDWARE,.Lfe6-SetHARDWARE
	.align 16
.globl NMI
	.type	 NMI,@function
NMI:
	pushl %ebp
	movl %esp,%ebp
	subl $8,%esp
	pushl %ebx
	movb regS,%cl
	movb %cl,-1(%ebp)
	movzbl -1(%ebp),%ecx
	movw regPC,%bx
	shrw $8,%bx
	movb %bl,memory+256(%ecx)
	decb -1(%ebp)
	movzbl -1(%ebp),%ecx
	movb regPC,%bl
	movb %bl,memory+256(%ecx)
	decb -1(%ebp)
	movb N,%al
	andb $128,%al
	movb %al,-2(%ebp)
	movzbl -2(%ebp),%eax
	movl %eax,-8(%ebp)
	cmpb $0,V
	je .L44
	movl -8(%ebp),%ebx
	orb $64,%bl
	movb %bl,%cl
	jmp .L45
	.align 16
.L44:
	movb -8(%ebp),%cl
.L45:
	movb %cl,-2(%ebp)
	movb regP,%cl
	andb $60,%cl
	orb %cl,-2(%ebp)
	movzbl -2(%ebp),%edx
	cmpb $0,Z
	jne .L46
	movl %edx,%ebx
	orb $2,%bl
	movb %bl,%cl
	jmp .L47
	.align 16
.L46:
	movb %dl,%cl
.L47:
	movb %cl,-2(%ebp)
	movb C,%al
	orb %al,-2(%ebp)
	movzbl -1(%ebp),%ecx
	movb -2(%ebp),%bl
	movb %bl,memory+256(%ecx)
	decb -1(%ebp)
	orb $4,regP
	movzbw memory+65531,%cx
	movl %ecx,%ebx
	salw $8,%bx
	movzbw memory+65530,%cx
	movl %ebx,%eax
	orw %cx,%ax
	movw %ax,regPC
	movb -1(%ebp),%cl
	movb %cl,regS
.L43:
	movl -12(%ebp),%ebx
	movl %ebp,%esp
	popl %ebp
	ret
.Lfe7:
	.size	 NMI,.Lfe7-NMI
.section	.rodata
.LC1:
	.string	"*** Invalid Opcode %02x at address %04x\n"
.text
	.align 16
.globl GO
	.type	 GO,@function
GO:
	pushl %ebp
	movl %esp,%ebp
	subl $172,%esp
	pushl %edi
	pushl %esi
	pushl %ebx
	movw regPC,%ax
	movw %ax,-2(%ebp)
	movb regS,%al
	movb %al,-3(%ebp)
	movb regA,%al
	movb %al,-4(%ebp)
	movb regX,%al
	movb %al,-5(%ebp)
	movb regY,%al
	movb %al,-6(%ebp)
	cmpl $0,IRQ
	je .L49
	movb regP,%al
	andb $4,%al
	testb %al,%al
	jne .L50
	movw -2(%ebp),%ax
	movw %ax,-12(%ebp)
	movzbl -3(%ebp),%eax
	movw -12(%ebp),%dx
	shrw $8,%dx
	movb %dl,memory+256(%eax)
	decb -3(%ebp)
	movzbl -3(%ebp),%eax
	movb -12(%ebp),%dl
	movb %dl,memory+256(%eax)
	decb -3(%ebp)
	movb N,%bl
	andb $128,%bl
	movb %bl,-9(%ebp)
	movzbl -9(%ebp),%ebx
	movl %ebx,-172(%ebp)
	cmpb $0,V
	je .L51
	movl -172(%ebp),%edx
	orb $64,%dl
	movb %dl,%al
	jmp .L52
	.align 16
.L51:
	movb -172(%ebp),%al
.L52:
	movb %al,-9(%ebp)
	movb regP,%al
	andb $60,%al
	orb %al,-9(%ebp)
	movzbl -9(%ebp),%esi
	cmpb $0,Z
	jne .L53
	movl %esi,%edx
	orb $2,%dl
	movb %dl,%al
	jmp .L54
	.align 16
.L53:
	movl %esi,%ebx
	movb %bl,%al
.L54:
	movb %al,-9(%ebp)
	movb C,%bl
	orb %bl,-9(%ebp)
	movzbl -3(%ebp),%eax
	movb -9(%ebp),%dl
	movb %dl,memory+256(%eax)
	decb -3(%ebp)
	orb $4,regP
	movzbw memory+65535,%ax
	movl %eax,%edx
	salw $8,%dx
	movzbw memory+65534,%ax
	movl %edx,%ebx
	orw %ax,%bx
	movw %bx,-2(%ebp)
	movl $0,IRQ
.L50:
.L49:
	nop
.L55:
	decl 8(%ebp)
	cmpl $-1,8(%ebp)
	jne .L57
	jmp .L56
	.align 16
.L57:
	movzwl -2(%ebp),%edx
	movzbl memory(%edx),%eax
	incw -2(%ebp)
	cmpl $255,%eax
	ja .L572
	movl .L571(,%eax,4),%eax
	jmp *%eax
	.align 16
	.align 4
.L571:
	.long .L59
	.long .L61
	.long .L63
	.long .L65
	.long .L67
	.long .L69
	.long .L71
	.long .L73
	.long .L75
	.long .L77
	.long .L79
	.long .L81
	.long .L83
	.long .L85
	.long .L87
	.long .L89
	.long .L91
	.long .L93
	.long .L95
	.long .L97
	.long .L99
	.long .L101
	.long .L103
	.long .L105
	.long .L107
	.long .L109
	.long .L111
	.long .L113
	.long .L115
	.long .L117
	.long .L119
	.long .L121
	.long .L123
	.long .L125
	.long .L127
	.long .L129
	.long .L131
	.long .L133
	.long .L135
	.long .L137
	.long .L139
	.long .L141
	.long .L143
	.long .L145
	.long .L147
	.long .L149
	.long .L151
	.long .L153
	.long .L155
	.long .L157
	.long .L159
	.long .L161
	.long .L163
	.long .L165
	.long .L167
	.long .L169
	.long .L171
	.long .L173
	.long .L175
	.long .L177
	.long .L179
	.long .L181
	.long .L183
	.long .L185
	.long .L187
	.long .L189
	.long .L191
	.long .L193
	.long .L195
	.long .L197
	.long .L199
	.long .L201
	.long .L203
	.long .L205
	.long .L207
	.long .L209
	.long .L211
	.long .L213
	.long .L215
	.long .L217
	.long .L219
	.long .L221
	.long .L223
	.long .L225
	.long .L227
	.long .L229
	.long .L231
	.long .L233
	.long .L235
	.long .L237
	.long .L239
	.long .L241
	.long .L243
	.long .L245
	.long .L247
	.long .L249
	.long .L251
	.long .L253
	.long .L255
	.long .L257
	.long .L259
	.long .L261
	.long .L263
	.long .L265
	.long .L267
	.long .L269
	.long .L271
	.long .L273
	.long .L275
	.long .L277
	.long .L279
	.long .L281
	.long .L283
	.long .L285
	.long .L287
	.long .L289
	.long .L291
	.long .L293
	.long .L295
	.long .L297
	.long .L299
	.long .L301
	.long .L303
	.long .L305
	.long .L307
	.long .L309
	.long .L311
	.long .L313
	.long .L315
	.long .L317
	.long .L319
	.long .L321
	.long .L323
	.long .L325
	.long .L327
	.long .L329
	.long .L331
	.long .L333
	.long .L335
	.long .L337
	.long .L339
	.long .L341
	.long .L343
	.long .L345
	.long .L347
	.long .L349
	.long .L351
	.long .L353
	.long .L355
	.long .L357
	.long .L359
	.long .L361
	.long .L363
	.long .L365
	.long .L367
	.long .L369
	.long .L371
	.long .L373
	.long .L375
	.long .L377
	.long .L379
	.long .L381
	.long .L383
	.long .L385
	.long .L387
	.long .L389
	.long .L391
	.long .L393
	.long .L395
	.long .L397
	.long .L399
	.long .L401
	.long .L403
	.long .L405
	.long .L407
	.long .L409
	.long .L411
	.long .L413
	.long .L415
	.long .L417
	.long .L419
	.long .L421
	.long .L423
	.long .L425
	.long .L427
	.long .L429
	.long .L431
	.long .L433
	.long .L435
	.long .L437
	.long .L439
	.long .L441
	.long .L443
	.long .L445
	.long .L447
	.long .L449
	.long .L451
	.long .L453
	.long .L455
	.long .L457
	.long .L459
	.long .L461
	.long .L463
	.long .L465
	.long .L467
	.long .L469
	.long .L471
	.long .L473
	.long .L475
	.long .L477
	.long .L479
	.long .L481
	.long .L483
	.long .L485
	.long .L487
	.long .L489
	.long .L491
	.long .L493
	.long .L495
	.long .L497
	.long .L499
	.long .L501
	.long .L503
	.long .L505
	.long .L507
	.long .L509
	.long .L511
	.long .L513
	.long .L515
	.long .L517
	.long .L519
	.long .L521
	.long .L523
	.long .L525
	.long .L527
	.long .L529
	.long .L531
	.long .L533
	.long .L535
	.long .L537
	.long .L539
	.long .L541
	.long .L543
	.long .L545
	.long .L547
	.long .L549
	.long .L551
	.long .L553
	.long .L555
	.long .L557
	.long .L559
	.long .L561
	.long .L563
	.long .L565
	.long .L567
	.long .L569
	.align 16
.L59:
	jmp .L60
	.align 16
.L61:
	jmp .L62
	.align 16
.L63:
	jmp .L64
	.align 16
.L65:
	jmp .L66
	.align 16
.L67:
	jmp .L68
	.align 16
.L69:
	jmp .L70
	.align 16
.L71:
	jmp .L72
	.align 16
.L73:
	jmp .L74
	.align 16
.L75:
	jmp .L76
	.align 16
.L77:
	jmp .L78
	.align 16
.L79:
	jmp .L80
	.align 16
.L81:
	jmp .L82
	.align 16
.L83:
	jmp .L84
	.align 16
.L85:
	jmp .L86
	.align 16
.L87:
	jmp .L88
	.align 16
.L89:
	jmp .L90
	.align 16
.L91:
	jmp .L92
	.align 16
.L93:
	jmp .L94
	.align 16
.L95:
	jmp .L96
	.align 16
.L97:
	jmp .L98
	.align 16
.L99:
	jmp .L100
	.align 16
.L101:
	jmp .L102
	.align 16
.L103:
	jmp .L104
	.align 16
.L105:
	jmp .L106
	.align 16
.L107:
	jmp .L108
	.align 16
.L109:
	jmp .L110
	.align 16
.L111:
	jmp .L112
	.align 16
.L113:
	jmp .L114
	.align 16
.L115:
	jmp .L116
	.align 16
.L117:
	jmp .L118
	.align 16
.L119:
	jmp .L120
	.align 16
.L121:
	jmp .L122
	.align 16
.L123:
	jmp .L124
	.align 16
.L125:
	jmp .L126
	.align 16
.L127:
	jmp .L128
	.align 16
.L129:
	jmp .L130
	.align 16
.L131:
	jmp .L132
	.align 16
.L133:
	jmp .L134
	.align 16
.L135:
	jmp .L136
	.align 16
.L137:
	jmp .L138
	.align 16
.L139:
	jmp .L140
	.align 16
.L141:
	jmp .L142
	.align 16
.L143:
	jmp .L144
	.align 16
.L145:
	jmp .L146
	.align 16
.L147:
	jmp .L148
	.align 16
.L149:
	jmp .L150
	.align 16
.L151:
	jmp .L152
	.align 16
.L153:
	jmp .L154
	.align 16
.L155:
	jmp .L156
	.align 16
.L157:
	jmp .L158
	.align 16
.L159:
	jmp .L160
	.align 16
.L161:
	jmp .L162
	.align 16
.L163:
	jmp .L164
	.align 16
.L165:
	jmp .L166
	.align 16
.L167:
	jmp .L168
	.align 16
.L169:
	jmp .L170
	.align 16
.L171:
	jmp .L172
	.align 16
.L173:
	jmp .L174
	.align 16
.L175:
	jmp .L176
	.align 16
.L177:
	jmp .L178
	.align 16
.L179:
	jmp .L180
	.align 16
.L181:
	jmp .L182
	.align 16
.L183:
	jmp .L184
	.align 16
.L185:
	jmp .L186
	.align 16
.L187:
	jmp .L188
	.align 16
.L189:
	jmp .L190
	.align 16
.L191:
	jmp .L192
	.align 16
.L193:
	jmp .L194
	.align 16
.L195:
	jmp .L196
	.align 16
.L197:
	jmp .L198
	.align 16
.L199:
	jmp .L200
	.align 16
.L201:
	jmp .L202
	.align 16
.L203:
	jmp .L204
	.align 16
.L205:
	jmp .L206
	.align 16
.L207:
	jmp .L208
	.align 16
.L209:
	jmp .L210
	.align 16
.L211:
	jmp .L212
	.align 16
.L213:
	jmp .L214
	.align 16
.L215:
	jmp .L216
	.align 16
.L217:
	jmp .L218
	.align 16
.L219:
	jmp .L220
	.align 16
.L221:
	jmp .L222
	.align 16
.L223:
	jmp .L224
	.align 16
.L225:
	jmp .L226
	.align 16
.L227:
	jmp .L228
	.align 16
.L229:
	jmp .L230
	.align 16
.L231:
	jmp .L232
	.align 16
.L233:
	jmp .L234
	.align 16
.L235:
	jmp .L236
	.align 16
.L237:
	jmp .L238
	.align 16
.L239:
	jmp .L240
	.align 16
.L241:
	jmp .L242
	.align 16
.L243:
	jmp .L244
	.align 16
.L245:
	jmp .L246
	.align 16
.L247:
	jmp .L248
	.align 16
.L249:
	jmp .L250
	.align 16
.L251:
	jmp .L252
	.align 16
.L253:
	jmp .L254
	.align 16
.L255:
	jmp .L256
	.align 16
.L257:
	jmp .L258
	.align 16
.L259:
	jmp .L260
	.align 16
.L261:
	jmp .L262
	.align 16
.L263:
	jmp .L264
	.align 16
.L265:
	jmp .L266
	.align 16
.L267:
	jmp .L268
	.align 16
.L269:
	jmp .L270
	.align 16
.L271:
	jmp .L272
	.align 16
.L273:
	jmp .L274
	.align 16
.L275:
	jmp .L276
	.align 16
.L277:
	jmp .L278
	.align 16
.L279:
	jmp .L280
	.align 16
.L281:
	jmp .L282
	.align 16
.L283:
	jmp .L284
	.align 16
.L285:
	jmp .L286
	.align 16
.L287:
	jmp .L288
	.align 16
.L289:
	jmp .L290
	.align 16
.L291:
	jmp .L292
	.align 16
.L293:
	jmp .L294
	.align 16
.L295:
	jmp .L296
	.align 16
.L297:
	jmp .L298
	.align 16
.L299:
	jmp .L300
	.align 16
.L301:
	jmp .L302
	.align 16
.L303:
	jmp .L304
	.align 16
.L305:
	jmp .L306
	.align 16
.L307:
	jmp .L308
	.align 16
.L309:
	jmp .L310
	.align 16
.L311:
	jmp .L312
	.align 16
.L313:
	jmp .L314
	.align 16
.L315:
	jmp .L316
	.align 16
.L317:
	jmp .L318
	.align 16
.L319:
	jmp .L320
	.align 16
.L321:
	jmp .L322
	.align 16
.L323:
	jmp .L324
	.align 16
.L325:
	jmp .L326
	.align 16
.L327:
	jmp .L328
	.align 16
.L329:
	jmp .L330
	.align 16
.L331:
	jmp .L332
	.align 16
.L333:
	jmp .L334
	.align 16
.L335:
	jmp .L336
	.align 16
.L337:
	jmp .L338
	.align 16
.L339:
	jmp .L340
	.align 16
.L341:
	jmp .L342
	.align 16
.L343:
	jmp .L344
	.align 16
.L345:
	jmp .L346
	.align 16
.L347:
	jmp .L348
	.align 16
.L349:
	jmp .L350
	.align 16
.L351:
	jmp .L352
	.align 16
.L353:
	jmp .L354
	.align 16
.L355:
	jmp .L356
	.align 16
.L357:
	jmp .L358
	.align 16
.L359:
	jmp .L360
	.align 16
.L361:
	jmp .L362
	.align 16
.L363:
	jmp .L364
	.align 16
.L365:
	jmp .L366
	.align 16
.L367:
	jmp .L368
	.align 16
.L369:
	jmp .L370
	.align 16
.L371:
	jmp .L372
	.align 16
.L373:
	jmp .L374
	.align 16
.L375:
	jmp .L376
	.align 16
.L377:
	jmp .L378
	.align 16
.L379:
	jmp .L380
	.align 16
.L381:
	jmp .L382
	.align 16
.L383:
	jmp .L384
	.align 16
.L385:
	jmp .L386
	.align 16
.L387:
	jmp .L388
	.align 16
.L389:
	jmp .L390
	.align 16
.L391:
	jmp .L392
	.align 16
.L393:
	jmp .L394
	.align 16
.L395:
	jmp .L396
	.align 16
.L397:
	jmp .L398
	.align 16
.L399:
	jmp .L400
	.align 16
.L401:
	jmp .L402
	.align 16
.L403:
	jmp .L404
	.align 16
.L405:
	jmp .L406
	.align 16
.L407:
	jmp .L408
	.align 16
.L409:
	jmp .L410
	.align 16
.L411:
	jmp .L412
	.align 16
.L413:
	jmp .L414
	.align 16
.L415:
	jmp .L416
	.align 16
.L417:
	jmp .L418
	.align 16
.L419:
	jmp .L420
	.align 16
.L421:
	jmp .L422
	.align 16
.L423:
	jmp .L424
	.align 16
.L425:
	jmp .L426
	.align 16
.L427:
	jmp .L428
	.align 16
.L429:
	jmp .L430
	.align 16
.L431:
	jmp .L432
	.align 16
.L433:
	jmp .L434
	.align 16
.L435:
	jmp .L436
	.align 16
.L437:
	jmp .L438
	.align 16
.L439:
	jmp .L440
	.align 16
.L441:
	jmp .L442
	.align 16
.L443:
	jmp .L444
	.align 16
.L445:
	jmp .L446
	.align 16
.L447:
	jmp .L448
	.align 16
.L449:
	jmp .L450
	.align 16
.L451:
	jmp .L452
	.align 16
.L453:
	jmp .L454
	.align 16
.L455:
	jmp .L456
	.align 16
.L457:
	jmp .L458
	.align 16
.L459:
	jmp .L460
	.align 16
.L461:
	jmp .L462
	.align 16
.L463:
	jmp .L464
	.align 16
.L465:
	jmp .L466
	.align 16
.L467:
	jmp .L468
	.align 16
.L469:
	jmp .L470
	.align 16
.L471:
	jmp .L472
	.align 16
.L473:
	jmp .L474
	.align 16
.L475:
	jmp .L476
	.align 16
.L477:
	jmp .L478
	.align 16
.L479:
	jmp .L480
	.align 16
.L481:
	jmp .L482
	.align 16
.L483:
	jmp .L484
	.align 16
.L485:
	jmp .L486
	.align 16
.L487:
	jmp .L488
	.align 16
.L489:
	jmp .L490
	.align 16
.L491:
	jmp .L492
	.align 16
.L493:
	jmp .L494
	.align 16
.L495:
	jmp .L496
	.align 16
.L497:
	jmp .L498
	.align 16
.L499:
	jmp .L500
	.align 16
.L501:
	jmp .L502
	.align 16
.L503:
	jmp .L504
	.align 16
.L505:
	jmp .L506
	.align 16
.L507:
	jmp .L508
	.align 16
.L509:
	jmp .L510
	.align 16
.L511:
	jmp .L512
	.align 16
.L513:
	jmp .L514
	.align 16
.L515:
	jmp .L516
	.align 16
.L517:
	jmp .L518
	.align 16
.L519:
	jmp .L520
	.align 16
.L521:
	jmp .L522
	.align 16
.L523:
	jmp .L524
	.align 16
.L525:
	jmp .L526
	.align 16
.L527:
	jmp .L528
	.align 16
.L529:
	jmp .L530
	.align 16
.L531:
	jmp .L532
	.align 16
.L533:
	jmp .L534
	.align 16
.L535:
	jmp .L536
	.align 16
.L537:
	jmp .L538
	.align 16
.L539:
	jmp .L540
	.align 16
.L541:
	jmp .L542
	.align 16
.L543:
	jmp .L544
	.align 16
.L545:
	jmp .L546
	.align 16
.L547:
	jmp .L548
	.align 16
.L549:
	jmp .L550
	.align 16
.L551:
	jmp .L552
	.align 16
.L553:
	jmp .L554
	.align 16
.L555:
	jmp .L556
	.align 16
.L557:
	jmp .L558
	.align 16
.L559:
	jmp .L560
	.align 16
.L561:
	jmp .L562
	.align 16
.L563:
	jmp .L564
	.align 16
.L565:
	jmp .L566
	.align 16
.L567:
	jmp .L568
	.align 16
.L569:
	jmp .L570
	.align 16
.L572:
.L58:
	nop
.L60:
	movb regP,%al
	andb $4,%al
	testb %al,%al
	jne .L573
	movw -2(%ebp),%bx
	incw %bx
	movw %bx,-12(%ebp)
	movzbl -3(%ebp),%eax
	movw -12(%ebp),%dx
	shrw $8,%dx
	movb %dl,memory+256(%eax)
	decb -3(%ebp)
	movzbl -3(%ebp),%eax
	movb -12(%ebp),%dl
	movb %dl,memory+256(%eax)
	decb -3(%ebp)
	orb $16,regP
	movb N,%bl
	andb $128,%bl
	movb %bl,-9(%ebp)
	movzbl -9(%ebp),%edi
	cmpb $0,V
	je .L574
	movl %edi,%edx
	orb $64,%dl
	movb %dl,%al
	jmp .L575
	.align 16
.L574:
	movl %edi,%ebx
	movb %bl,%al
.L575:
	movb %al,-9(%ebp)
	movb regP,%al
	andb $60,%al
	orb %al,-9(%ebp)
	movzbl -9(%ebp),%ebx
	movl %ebx,-28(%ebp)
	cmpb $0,Z
	jne .L576
	movl -28(%ebp),%edx
	orb $2,%dl
	movb %dl,%al
	jmp .L577
	.align 16
.L576:
	movb -28(%ebp),%al
.L577:
	movb %al,-9(%ebp)
	movb C,%bl
	orb %bl,-9(%ebp)
	movzbl -3(%ebp),%eax
	movb -9(%ebp),%dl
	movb %dl,memory+256(%eax)
	decb -3(%ebp)
	orb $4,regP
	movzbw memory+65535,%ax
	movl %eax,%edx
	salw $8,%dx
	movzbw memory+65534,%ax
	movl %edx,%ebx
	orw %ax,%bx
	movw %bx,-2(%ebp)
.L573:
	jmp .L578
	.align 16
.L62:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	movl %edx,%ebx
	addw %ax,%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib+1(%eax)
	jne .L579
	movzwl -8(%ebp),%eax
	leal 1(%eax),%edx
	pushl %edx
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl %eax,%ebx
	sall $8,%ebx
	movl %ebx,-32(%ebp)
	jmp .L580
	.align 16
.L579:
	movzwl -8(%ebp),%eax
	movzbl memory+1(%eax),%ebx
	movl %ebx,-32(%ebp)
	sall $8,-32(%ebp)
.L580:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L581
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl -32(%ebp),%edx
	orl %eax,%edx
	movl %edx,%eax
	jmp .L582
	.align 16
.L581:
	movzwl -8(%ebp),%edx
	movzbl memory(%edx),%ecx
	movl -32(%ebp),%edx
	orl %ecx,%edx
	movl %edx,%eax
.L582:
	movw %ax,-8(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L583
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L584
	.align 16
.L583:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L584:
	movb %al,-9(%ebp)
	movb -4(%ebp),%al
	orb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L68:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L70:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	movb -4(%ebp),%al
	orb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L72:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	movb -9(%ebp),%al
	shrb $7,%al
	movb %al,C
	movb -9(%ebp),%al
	addb %al,%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
	movzwl -8(%ebp),%eax
	movb Z,%dl
	movb %dl,memory(%eax)
	jmp .L578
	.align 16
.L76:
	movb N,%bl
	andb $128,%bl
	movb %bl,-9(%ebp)
	movzbl -9(%ebp),%ebx
	movl %ebx,-36(%ebp)
	cmpb $0,V
	je .L585
	movl -36(%ebp),%edx
	orb $64,%dl
	movb %dl,%al
	jmp .L586
	.align 16
.L585:
	movb -36(%ebp),%al
.L586:
	movb %al,-9(%ebp)
	movb regP,%al
	andb $60,%al
	orb %al,-9(%ebp)
	movzbl -9(%ebp),%ebx
	movl %ebx,-40(%ebp)
	cmpb $0,Z
	jne .L587
	movl -40(%ebp),%edx
	orb $2,%dl
	movb %dl,%al
	jmp .L588
	.align 16
.L587:
	movb -40(%ebp),%al
.L588:
	movb %al,-9(%ebp)
	movb C,%bl
	orb %bl,-9(%ebp)
	movzbl -3(%ebp),%eax
	movb -9(%ebp),%dl
	movb %dl,memory+256(%eax)
	decb -3(%ebp)
	jmp .L578
	.align 16
.L78:
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	incw -2(%ebp)
	movb -4(%ebp),%al
	orb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L80:
	movb -4(%ebp),%al
	shrb $7,%al
	movb %al,C
	movb -4(%ebp),%al
	addb %al,%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L84:
	addw $2,-2(%ebp)
	jmp .L578
	.align 16
.L86:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L589
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L590
	.align 16
.L589:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L590:
	movb %al,-9(%ebp)
	movb -4(%ebp),%al
	orb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L88:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L591
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L592
	.align 16
.L591:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L592:
	movb %al,-9(%ebp)
	movb -9(%ebp),%al
	shrb $7,%al
	movb %al,C
	movb -9(%ebp),%al
	addb %al,%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
	movzwl -8(%ebp),%eax
	cmpb $0,attrib(%eax)
	jne .L593
	movzwl -8(%ebp),%eax
	movb Z,%dl
	movb %dl,memory(%eax)
	jmp .L594
	.align 16
.L593:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L595
	movzbl Z,%eax
	pushl %eax
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_PutByte
	addl $8,%esp
	movl %eax,%eax
	testl %eax,%eax
	je .L596
	jmp .L56
	.align 16
.L596:
.L595:
.L594:
	jmp .L578
	.align 16
.L92:
	movb N,%al
	andb $128,%al
	testb %al,%al
	jne .L597
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-13(%ebp)
	movsbw -13(%ebp),%ax
	addw %ax,-2(%ebp)
.L597:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L94:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib+1(%eax)
	jne .L598
	movzwl -8(%ebp),%eax
	leal 1(%eax),%edx
	pushl %edx
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl %eax,%ebx
	sall $8,%ebx
	movl %ebx,-44(%ebp)
	jmp .L599
	.align 16
.L598:
	movzwl -8(%ebp),%eax
	movzbl memory+1(%eax),%ebx
	movl %ebx,-44(%ebp)
	sall $8,-44(%ebp)
.L599:
	movzbl -6(%ebp),%ebx
	movl %ebx,-48(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L600
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl -44(%ebp),%edx
	orl %eax,%edx
	movl -48(%ebp),%ecx
	addl %edx,%ecx
	movl %ecx,%eax
	jmp .L601
	.align 16
.L600:
	movzwl -8(%ebp),%edx
	movzbl memory(%edx),%ecx
	movl -44(%ebp),%edx
	orl %ecx,%edx
	movl -48(%ebp),%ecx
	addl %edx,%ecx
	movl %ecx,%eax
.L601:
	movw %ax,-8(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L602
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L603
	.align 16
.L602:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L603:
	movb %al,-9(%ebp)
	movb -4(%ebp),%al
	orb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L100:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L102:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	addw %ax,%dx
	movl %edx,%ebx
	movb $0,%bh
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	movb -4(%ebp),%al
	orb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L104:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	addw %ax,%dx
	movl %edx,%ebx
	movb $0,%bh
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	movb -9(%ebp),%al
	shrb $7,%al
	movb %al,C
	movb -9(%ebp),%al
	addb %al,%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
	movzwl -8(%ebp),%eax
	movb Z,%dl
	movb %dl,memory(%eax)
	jmp .L578
	.align 16
.L108:
	movb $0,C
	jmp .L578
	.align 16
.L110:
	movzwl -2(%ebp),%eax
	movzbw -6(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L604
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L605
	.align 16
.L604:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L605:
	movb %al,-9(%ebp)
	movb -4(%ebp),%al
	orb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L112:
	jmp .L578
	.align 16
.L116:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L118:
	movzwl -2(%ebp),%eax
	movzbw -5(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L606
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L607
	.align 16
.L606:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L607:
	movb %al,-9(%ebp)
	movb -4(%ebp),%al
	orb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L120:
	movzwl -2(%ebp),%eax
	movzbw -5(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L608
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L609
	.align 16
.L608:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L609:
	movb %al,-9(%ebp)
	movb -9(%ebp),%al
	shrb $7,%al
	movb %al,C
	movb -9(%ebp),%al
	addb %al,%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
	movzwl -8(%ebp),%eax
	cmpb $0,attrib(%eax)
	jne .L610
	movzwl -8(%ebp),%eax
	movb Z,%dl
	movb %dl,memory(%eax)
	jmp .L611
	.align 16
.L610:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L612
	movzbl Z,%eax
	pushl %eax
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_PutByte
	addl $8,%esp
	movl %eax,%eax
	testl %eax,%eax
	je .L613
	jmp .L56
	.align 16
.L613:
.L612:
.L611:
	jmp .L578
	.align 16
.L124:
	movw -2(%ebp),%bx
	incw %bx
	movw %bx,-12(%ebp)
	movzbl -3(%ebp),%eax
	movw -12(%ebp),%dx
	shrw $8,%dx
	movb %dl,memory+256(%eax)
	decb -3(%ebp)
	movzbl -3(%ebp),%eax
	movb -12(%ebp),%dl
	movb %dl,memory+256(%eax)
	decb -3(%ebp)
	movzwl -2(%ebp),%eax
	movzbw memory+1(%eax),%dx
	movl %edx,%eax
	salw $8,%ax
	movzwl -2(%ebp),%edx
	movzbw memory(%edx),%cx
	movl %eax,%ebx
	orw %cx,%bx
	movw %bx,-2(%ebp)
	jmp .L578
	.align 16
.L126:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	movl %edx,%ebx
	addw %ax,%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib+1(%eax)
	jne .L614
	movzwl -8(%ebp),%eax
	leal 1(%eax),%edx
	pushl %edx
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl %eax,%ebx
	sall $8,%ebx
	movl %ebx,-52(%ebp)
	jmp .L615
	.align 16
.L614:
	movzwl -8(%ebp),%eax
	movzbl memory+1(%eax),%ebx
	movl %ebx,-52(%ebp)
	sall $8,-52(%ebp)
.L615:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L616
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl -52(%ebp),%edx
	orl %eax,%edx
	movl %edx,%eax
	jmp .L617
	.align 16
.L616:
	movzwl -8(%ebp),%edx
	movzbl memory(%edx),%ecx
	movl -52(%ebp),%edx
	orl %ecx,%edx
	movl %edx,%eax
.L617:
	movw %ax,-8(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L618
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L619
	.align 16
.L618:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L619:
	movb %al,-9(%ebp)
	movb -4(%ebp),%al
	andb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L132:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,N
	movb N,%bl
	andb $64,%bl
	movb %bl,V
	movb -4(%ebp),%bl
	andb N,%bl
	movb %bl,Z
	jmp .L578
	.align 16
.L134:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	movb -4(%ebp),%al
	andb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L136:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	cmpb $0,C
	je .L620
	movb -9(%ebp),%al
	shrb $7,%al
	movb %al,C
	movb -9(%ebp),%al
	addb %al,%al
	movb %al,%dl
	orb $1,%dl
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L621
	.align 16
.L620:
	movb -9(%ebp),%al
	shrb $7,%al
	movb %al,C
	movb -9(%ebp),%al
	addb %al,%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
.L621:
	movzwl -8(%ebp),%eax
	movb Z,%dl
	movb %dl,memory(%eax)
	jmp .L578
	.align 16
.L140:
	incb -3(%ebp)
	movzbl -3(%ebp),%eax
	movb memory+256(%eax),%dl
	movb %dl,-9(%ebp)
	movb -9(%ebp),%bl
	andb $128,%bl
	movb %bl,N
	movb -9(%ebp),%al
	shrb $6,%al
	movb %al,%dl
	andb $1,%dl
	movb %dl,V
	movb -9(%ebp),%al
	shrb $1,%al
	movb %al,%dl
	xorb $1,%dl
	movb %dl,%al
	andb $1,%al
	movb %al,Z
	movb -9(%ebp),%bl
	andb $1,%bl
	movb %bl,C
	movb -9(%ebp),%al
	andb $60,%al
	movb %al,%bl
	orb $32,%bl
	movb %bl,regP
	jmp .L578
	.align 16
.L142:
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	incw -2(%ebp)
	movb -4(%ebp),%al
	andb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L144:
	cmpb $0,C
	je .L622
	movb -4(%ebp),%al
	shrb $7,%al
	movb %al,C
	movb -4(%ebp),%al
	addb %al,%al
	movb %al,%dl
	orb $1,%dl
	movb %dl,%al
	movb %al,-4(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L623
	.align 16
.L622:
	movb -4(%ebp),%al
	shrb $7,%al
	movb %al,C
	movb -4(%ebp),%al
	addb %al,%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
.L623:
	jmp .L578
	.align 16
.L148:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L624
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L625
	.align 16
.L624:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L625:
	movb %al,N
	movb N,%bl
	andb $64,%bl
	movb %bl,V
	movb -4(%ebp),%bl
	andb N,%bl
	movb %bl,Z
	jmp .L578
	.align 16
.L150:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L626
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L627
	.align 16
.L626:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L627:
	movb %al,-9(%ebp)
	movb -4(%ebp),%al
	andb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L152:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L628
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L629
	.align 16
.L628:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L629:
	movb %al,-9(%ebp)
	cmpb $0,C
	je .L630
	movb -9(%ebp),%al
	shrb $7,%al
	movb %al,C
	movb -9(%ebp),%al
	addb %al,%al
	movb %al,%dl
	orb $1,%dl
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L631
	.align 16
.L630:
	movb -9(%ebp),%al
	shrb $7,%al
	movb %al,C
	movb -9(%ebp),%al
	addb %al,%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
.L631:
	movzwl -8(%ebp),%eax
	cmpb $0,attrib(%eax)
	jne .L632
	movzwl -8(%ebp),%eax
	movb Z,%dl
	movb %dl,memory(%eax)
	jmp .L633
	.align 16
.L632:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L634
	movzbl Z,%eax
	pushl %eax
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_PutByte
	addl $8,%esp
	movl %eax,%eax
	testl %eax,%eax
	je .L635
	jmp .L56
	.align 16
.L635:
.L634:
.L633:
	jmp .L578
	.align 16
.L156:
	movb N,%al
	andb $128,%al
	testb %al,%al
	je .L636
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-13(%ebp)
	movsbw -13(%ebp),%ax
	addw %ax,-2(%ebp)
.L636:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L158:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib+1(%eax)
	jne .L637
	movzwl -8(%ebp),%eax
	leal 1(%eax),%edx
	pushl %edx
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl %eax,%ebx
	sall $8,%ebx
	movl %ebx,-56(%ebp)
	jmp .L638
	.align 16
.L637:
	movzwl -8(%ebp),%eax
	movzbl memory+1(%eax),%ebx
	movl %ebx,-56(%ebp)
	sall $8,-56(%ebp)
.L638:
	movzbl -6(%ebp),%ebx
	movl %ebx,-60(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L639
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl -56(%ebp),%edx
	orl %eax,%edx
	movl -60(%ebp),%ecx
	addl %edx,%ecx
	movl %ecx,%eax
	jmp .L640
	.align 16
.L639:
	movzwl -8(%ebp),%edx
	movzbl memory(%edx),%ecx
	movl -56(%ebp),%edx
	orl %ecx,%edx
	movl -60(%ebp),%ecx
	addl %edx,%ecx
	movl %ecx,%eax
.L640:
	movw %ax,-8(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L641
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L642
	.align 16
.L641:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L642:
	movb %al,-9(%ebp)
	movb -4(%ebp),%al
	andb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L164:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L166:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	addw %ax,%dx
	movl %edx,%ebx
	movb $0,%bh
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	movb -4(%ebp),%al
	andb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L168:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	addw %ax,%dx
	movl %edx,%ebx
	movb $0,%bh
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	cmpb $0,C
	je .L643
	movb -9(%ebp),%al
	shrb $7,%al
	movb %al,C
	movb -9(%ebp),%al
	addb %al,%al
	movb %al,%dl
	orb $1,%dl
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L644
	.align 16
.L643:
	movb -9(%ebp),%al
	shrb $7,%al
	movb %al,C
	movb -9(%ebp),%al
	addb %al,%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
.L644:
	movzwl -8(%ebp),%eax
	movb Z,%dl
	movb %dl,memory(%eax)
	jmp .L578
	.align 16
.L172:
	movb $1,C
	jmp .L578
	.align 16
.L174:
	movzwl -2(%ebp),%eax
	movzbw -6(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L645
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L646
	.align 16
.L645:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L646:
	movb %al,-9(%ebp)
	movb -4(%ebp),%al
	andb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L176:
	jmp .L578
	.align 16
.L180:
	addw $2,-2(%ebp)
	jmp .L578
	.align 16
.L182:
	movzwl -2(%ebp),%eax
	movzbw -5(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L647
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L648
	.align 16
.L647:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L648:
	movb %al,-9(%ebp)
	movb -4(%ebp),%al
	andb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L184:
	movzwl -2(%ebp),%eax
	movzbw -5(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L649
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L650
	.align 16
.L649:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L650:
	movb %al,-9(%ebp)
	cmpb $0,C
	je .L651
	movb -9(%ebp),%al
	shrb $7,%al
	movb %al,C
	movb -9(%ebp),%al
	addb %al,%al
	movb %al,%dl
	orb $1,%dl
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L652
	.align 16
.L651:
	movb -9(%ebp),%al
	shrb $7,%al
	movb %al,C
	movb -9(%ebp),%al
	addb %al,%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
.L652:
	movzwl -8(%ebp),%eax
	cmpb $0,attrib(%eax)
	jne .L653
	movzwl -8(%ebp),%eax
	movb Z,%dl
	movb %dl,memory(%eax)
	jmp .L654
	.align 16
.L653:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L655
	movzbl Z,%eax
	pushl %eax
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_PutByte
	addl $8,%esp
	movl %eax,%eax
	testl %eax,%eax
	je .L656
	jmp .L56
	.align 16
.L656:
.L655:
.L654:
	jmp .L578
	.align 16
.L188:
	incb -3(%ebp)
	movzbl -3(%ebp),%eax
	movb memory+256(%eax),%dl
	movb %dl,-9(%ebp)
	movb -9(%ebp),%bl
	andb $128,%bl
	movb %bl,N
	movb -9(%ebp),%al
	shrb $6,%al
	movb %al,%dl
	andb $1,%dl
	movb %dl,V
	movb -9(%ebp),%al
	shrb $1,%al
	movb %al,%dl
	xorb $1,%dl
	movb %dl,%al
	andb $1,%al
	movb %al,Z
	movb -9(%ebp),%bl
	andb $1,%bl
	movb %bl,C
	movb -9(%ebp),%al
	andb $60,%al
	movb %al,%bl
	orb $32,%bl
	movb %bl,regP
	incb -3(%ebp)
	movzbl -3(%ebp),%eax
	movb memory+256(%eax),%dl
	movb %dl,-9(%ebp)
	incb -3(%ebp)
	movzbl -3(%ebp),%eax
	movzbw memory+256(%eax),%dx
	movl %edx,%eax
	salw $8,%ax
	movzbw -9(%ebp),%dx
	movl %eax,%ebx
	orw %dx,%bx
	movw %bx,-2(%ebp)
	jmp .L578
	.align 16
.L190:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	movl %edx,%ebx
	addw %ax,%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib+1(%eax)
	jne .L657
	movzwl -8(%ebp),%eax
	leal 1(%eax),%edx
	pushl %edx
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl %eax,%ebx
	sall $8,%ebx
	movl %ebx,-64(%ebp)
	jmp .L658
	.align 16
.L657:
	movzwl -8(%ebp),%eax
	movzbl memory+1(%eax),%ebx
	movl %ebx,-64(%ebp)
	sall $8,-64(%ebp)
.L658:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L659
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl -64(%ebp),%edx
	orl %eax,%edx
	movl %edx,%eax
	jmp .L660
	.align 16
.L659:
	movzwl -8(%ebp),%edx
	movzbl memory(%edx),%ecx
	movl -64(%ebp),%edx
	orl %ecx,%edx
	movl %edx,%eax
.L660:
	movw %ax,-8(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L661
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L662
	.align 16
.L661:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L662:
	movb %al,-9(%ebp)
	movb -4(%ebp),%al
	xorb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L196:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L198:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	movb -4(%ebp),%al
	xorb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L200:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	movb -9(%ebp),%bl
	andb $1,%bl
	movb %bl,C
	movb -9(%ebp),%bl
	shrb $1,%bl
	movb %bl,Z
	movb $0,N
	movzwl -8(%ebp),%eax
	movb Z,%dl
	movb %dl,memory(%eax)
	jmp .L578
	.align 16
.L204:
	movzbl -3(%ebp),%eax
	movb -4(%ebp),%dl
	movb %dl,memory+256(%eax)
	decb -3(%ebp)
	jmp .L578
	.align 16
.L206:
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	incw -2(%ebp)
	movb -4(%ebp),%al
	xorb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L208:
	movb -4(%ebp),%bl
	andb $1,%bl
	movb %bl,C
	shrb $1,-4(%ebp)
	movb $0,N
	movb -4(%ebp),%al
	movb %al,Z
	jmp .L578
	.align 16
.L212:
	movzwl -2(%ebp),%eax
	movzbw memory+1(%eax),%dx
	movl %edx,%eax
	salw $8,%ax
	movzwl -2(%ebp),%edx
	movzbw memory(%edx),%cx
	movl %eax,%ebx
	orw %cx,%bx
	movw %bx,-2(%ebp)
	jmp .L578
	.align 16
.L214:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L663
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L664
	.align 16
.L663:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L664:
	movb %al,-9(%ebp)
	movb -4(%ebp),%al
	xorb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L216:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L665
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L666
	.align 16
.L665:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L666:
	movb %al,-9(%ebp)
	movb -9(%ebp),%bl
	andb $1,%bl
	movb %bl,C
	movb -9(%ebp),%bl
	shrb $1,%bl
	movb %bl,Z
	movb $0,N
	movzwl -8(%ebp),%eax
	cmpb $0,attrib(%eax)
	jne .L667
	movzwl -8(%ebp),%eax
	movb Z,%dl
	movb %dl,memory(%eax)
	jmp .L668
	.align 16
.L667:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L669
	movzbl Z,%eax
	pushl %eax
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_PutByte
	addl $8,%esp
	movl %eax,%eax
	testl %eax,%eax
	je .L670
	jmp .L56
	.align 16
.L670:
.L669:
.L668:
	jmp .L578
	.align 16
.L220:
	cmpb $0,V
	jne .L671
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-13(%ebp)
	movsbw -13(%ebp),%ax
	addw %ax,-2(%ebp)
.L671:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L222:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib+1(%eax)
	jne .L672
	movzwl -8(%ebp),%eax
	leal 1(%eax),%edx
	pushl %edx
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl %eax,%ebx
	sall $8,%ebx
	movl %ebx,-68(%ebp)
	jmp .L673
	.align 16
.L672:
	movzwl -8(%ebp),%eax
	movzbl memory+1(%eax),%ebx
	movl %ebx,-68(%ebp)
	sall $8,-68(%ebp)
.L673:
	movzbl -6(%ebp),%ebx
	movl %ebx,-72(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L674
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl -68(%ebp),%edx
	orl %eax,%edx
	movl -72(%ebp),%ecx
	addl %edx,%ecx
	movl %ecx,%eax
	jmp .L675
	.align 16
.L674:
	movzwl -8(%ebp),%edx
	movzbl memory(%edx),%ecx
	movl -68(%ebp),%edx
	orl %ecx,%edx
	movl -72(%ebp),%ecx
	addl %edx,%ecx
	movl %ecx,%eax
.L675:
	movw %ax,-8(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L676
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L677
	.align 16
.L676:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L677:
	movb %al,-9(%ebp)
	movb -4(%ebp),%al
	xorb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L228:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L230:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	addw %ax,%dx
	movl %edx,%ebx
	movb $0,%bh
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	movb -4(%ebp),%al
	xorb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L232:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	addw %ax,%dx
	movl %edx,%ebx
	movb $0,%bh
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	movb -9(%ebp),%bl
	andb $1,%bl
	movb %bl,C
	movb -9(%ebp),%bl
	shrb $1,%bl
	movb %bl,Z
	movb $0,N
	movzwl -8(%ebp),%eax
	movb Z,%dl
	movb %dl,memory(%eax)
	jmp .L578
	.align 16
.L236:
	andb $251,regP
	jmp .L578
	.align 16
.L238:
	movzwl -2(%ebp),%eax
	movzbw -6(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L678
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L679
	.align 16
.L678:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L679:
	movb %al,-9(%ebp)
	movb -4(%ebp),%al
	xorb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L240:
	jmp .L578
	.align 16
.L244:
	addw $2,-2(%ebp)
	jmp .L578
	.align 16
.L246:
	movzwl -2(%ebp),%eax
	movzbw -5(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L680
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L681
	.align 16
.L680:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L681:
	movb %al,-9(%ebp)
	movb -4(%ebp),%al
	xorb -9(%ebp),%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L248:
	movzwl -2(%ebp),%eax
	movzbw -5(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L682
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L683
	.align 16
.L682:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L683:
	movb %al,-9(%ebp)
	movb -9(%ebp),%bl
	andb $1,%bl
	movb %bl,C
	movb -9(%ebp),%bl
	shrb $1,%bl
	movb %bl,Z
	movb $0,N
	movzwl -8(%ebp),%eax
	cmpb $0,attrib(%eax)
	jne .L684
	movzwl -8(%ebp),%eax
	movb Z,%dl
	movb %dl,memory(%eax)
	jmp .L685
	.align 16
.L684:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L686
	movzbl Z,%eax
	pushl %eax
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_PutByte
	addl $8,%esp
	movl %eax,%eax
	testl %eax,%eax
	je .L687
	jmp .L56
	.align 16
.L687:
.L686:
.L685:
	jmp .L578
	.align 16
.L252:
	incb -3(%ebp)
	movzbl -3(%ebp),%eax
	movb memory+256(%eax),%dl
	movb %dl,-9(%ebp)
	incb -3(%ebp)
	movzbl -3(%ebp),%eax
	movzbw memory+256(%eax),%dx
	movl %edx,%eax
	salw $8,%ax
	movzbw -9(%ebp),%dx
	orw %dx,%ax
	movl %eax,%ebx
	incw %bx
	movw %bx,-2(%ebp)
	jmp .L578
	.align 16
.L254:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	movl %edx,%ebx
	addw %ax,%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib+1(%eax)
	jne .L688
	movzwl -8(%ebp),%eax
	leal 1(%eax),%edx
	pushl %edx
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl %eax,%ebx
	sall $8,%ebx
	movl %ebx,-76(%ebp)
	jmp .L689
	.align 16
.L688:
	movzwl -8(%ebp),%eax
	movzbl memory+1(%eax),%ebx
	movl %ebx,-76(%ebp)
	sall $8,-76(%ebp)
.L689:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L690
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl -76(%ebp),%edx
	orl %eax,%edx
	movl %edx,%eax
	jmp .L691
	.align 16
.L690:
	movzwl -8(%ebp),%edx
	movzbl memory(%edx),%ecx
	movl -76(%ebp),%edx
	orl %ecx,%edx
	movl %edx,%eax
.L691:
	movw %ax,-8(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L692
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L693
	.align 16
.L692:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L693:
	movb %al,-9(%ebp)
	jmp .L694
	.align 16
.L260:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L262:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	jmp .L694
	.align 16
.L264:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	cmpb $0,C
	je .L695
	movb -9(%ebp),%bl
	andb $1,%bl
	movb %bl,C
	movb -9(%ebp),%al
	shrb $1,%al
	movb %al,%dl
	orb $128,%dl
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L696
	.align 16
.L695:
	movb -9(%ebp),%bl
	andb $1,%bl
	movb %bl,C
	movb -9(%ebp),%al
	shrb $1,%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
.L696:
	movzwl -8(%ebp),%eax
	movb Z,%dl
	movb %dl,memory(%eax)
	jmp .L578
	.align 16
.L268:
	incb -3(%ebp)
	movzbl -3(%ebp),%eax
	movb memory+256(%eax),%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L270:
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	incw -2(%ebp)
	jmp .L694
	.align 16
.L272:
	cmpb $0,C
	je .L697
	movb -4(%ebp),%bl
	andb $1,%bl
	movb %bl,C
	movb -4(%ebp),%al
	shrb $1,%al
	movb %al,%dl
	orb $128,%dl
	movb %dl,%al
	movb %al,-4(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L698
	.align 16
.L697:
	movb -4(%ebp),%bl
	andb $1,%bl
	movb %bl,C
	movb -4(%ebp),%al
	shrb $1,%al
	movb %al,%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
.L698:
	jmp .L578
	.align 16
.L276:
	movzwl -2(%ebp),%eax
	movzbw memory+1(%eax),%dx
	movl %edx,%eax
	salw $8,%ax
	movzwl -2(%ebp),%edx
	movzbw memory(%edx),%cx
	movl %eax,%ebx
	orw %cx,%bx
	movw %bx,-8(%ebp)
	movzwl -8(%ebp),%eax
	movzbw memory+1(%eax),%dx
	movl %edx,%eax
	salw $8,%ax
	movzwl -8(%ebp),%edx
	movzbw memory(%edx),%cx
	movl %eax,%ebx
	orw %cx,%bx
	movw %bx,-2(%ebp)
	jmp .L578
	.align 16
.L278:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L699
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L700
	.align 16
.L699:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L700:
	movb %al,-9(%ebp)
	jmp .L694
	.align 16
.L280:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L701
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L702
	.align 16
.L701:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L702:
	movb %al,-9(%ebp)
	cmpb $0,C
	je .L703
	movb -9(%ebp),%bl
	andb $1,%bl
	movb %bl,C
	movb -9(%ebp),%al
	shrb $1,%al
	movb %al,%dl
	orb $128,%dl
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L704
	.align 16
.L703:
	movb -9(%ebp),%bl
	andb $1,%bl
	movb %bl,C
	movb -9(%ebp),%al
	shrb $1,%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
.L704:
	movzwl -8(%ebp),%eax
	cmpb $0,attrib(%eax)
	jne .L705
	movzwl -8(%ebp),%eax
	movb Z,%dl
	movb %dl,memory(%eax)
	jmp .L706
	.align 16
.L705:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L707
	movzbl Z,%eax
	pushl %eax
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_PutByte
	addl $8,%esp
	movl %eax,%eax
	testl %eax,%eax
	je .L708
	jmp .L56
	.align 16
.L708:
.L707:
.L706:
	jmp .L578
	.align 16
.L284:
	cmpb $0,V
	je .L709
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-13(%ebp)
	movsbw -13(%ebp),%ax
	addw %ax,-2(%ebp)
.L709:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L286:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib+1(%eax)
	jne .L710
	movzwl -8(%ebp),%eax
	leal 1(%eax),%edx
	pushl %edx
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl %eax,%ebx
	sall $8,%ebx
	movl %ebx,-80(%ebp)
	jmp .L711
	.align 16
.L710:
	movzwl -8(%ebp),%eax
	movzbl memory+1(%eax),%ebx
	movl %ebx,-80(%ebp)
	sall $8,-80(%ebp)
.L711:
	movzbl -6(%ebp),%ebx
	movl %ebx,-84(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L712
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl -80(%ebp),%edx
	orl %eax,%edx
	movl -84(%ebp),%ecx
	addl %edx,%ecx
	movl %ecx,%eax
	jmp .L713
	.align 16
.L712:
	movzwl -8(%ebp),%edx
	movzbl memory(%edx),%ecx
	movl -80(%ebp),%edx
	orl %ecx,%edx
	movl -84(%ebp),%ecx
	addl %edx,%ecx
	movl %ecx,%eax
.L713:
	movw %ax,-8(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L714
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L715
	.align 16
.L714:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L715:
	movb %al,-9(%ebp)
	jmp .L694
	.align 16
.L292:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L294:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	addw %ax,%dx
	movl %edx,%ebx
	movb $0,%bh
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	jmp .L694
	.align 16
.L296:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	addw %ax,%dx
	movl %edx,%ebx
	movb $0,%bh
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	cmpb $0,C
	je .L716
	movb -9(%ebp),%bl
	andb $1,%bl
	movb %bl,C
	movb -9(%ebp),%al
	shrb $1,%al
	movb %al,%dl
	orb $128,%dl
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L717
	.align 16
.L716:
	movb -9(%ebp),%bl
	andb $1,%bl
	movb %bl,C
	movb -9(%ebp),%al
	shrb $1,%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
.L717:
	movzwl -8(%ebp),%eax
	movb Z,%dl
	movb %dl,memory(%eax)
	jmp .L578
	.align 16
.L300:
	orb $4,regP
	jmp .L578
	.align 16
.L302:
	movzwl -2(%ebp),%eax
	movzbw -6(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L718
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L719
	.align 16
.L718:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L719:
	movb %al,-9(%ebp)
	jmp .L694
	.align 16
.L304:
	jmp .L578
	.align 16
.L308:
	addw $2,-2(%ebp)
	jmp .L578
	.align 16
.L310:
	movzwl -2(%ebp),%eax
	movzbw -5(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L720
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L721
	.align 16
.L720:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L721:
	movb %al,-9(%ebp)
	jmp .L694
	.align 16
.L312:
	movzwl -2(%ebp),%eax
	movzbw -5(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L722
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L723
	.align 16
.L722:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L723:
	movb %al,-9(%ebp)
	cmpb $0,C
	je .L724
	movb -9(%ebp),%bl
	andb $1,%bl
	movb %bl,C
	movb -9(%ebp),%al
	shrb $1,%al
	movb %al,%dl
	orb $128,%dl
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L725
	.align 16
.L724:
	movb -9(%ebp),%bl
	andb $1,%bl
	movb %bl,C
	movb -9(%ebp),%al
	shrb $1,%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
.L725:
	movzwl -8(%ebp),%eax
	cmpb $0,attrib(%eax)
	jne .L726
	movzwl -8(%ebp),%eax
	movb Z,%dl
	movb %dl,memory(%eax)
	jmp .L727
	.align 16
.L726:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L728
	movzbl Z,%eax
	pushl %eax
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_PutByte
	addl $8,%esp
	movl %eax,%eax
	testl %eax,%eax
	je .L729
	jmp .L56
	.align 16
.L729:
.L728:
.L727:
	jmp .L578
	.align 16
.L316:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L318:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	movl %edx,%ebx
	addw %ax,%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib+1(%eax)
	jne .L730
	movzwl -8(%ebp),%eax
	leal 1(%eax),%edx
	pushl %edx
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl %eax,%ebx
	sall $8,%ebx
	movl %ebx,-88(%ebp)
	jmp .L731
	.align 16
.L730:
	movzwl -8(%ebp),%eax
	movzbl memory+1(%eax),%ebx
	movl %ebx,-88(%ebp)
	sall $8,-88(%ebp)
.L731:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L732
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl -88(%ebp),%edx
	orl %eax,%edx
	movl %edx,%eax
	jmp .L733
	.align 16
.L732:
	movzwl -8(%ebp),%edx
	movzbl memory(%edx),%ecx
	movl -88(%ebp),%edx
	orl %ecx,%edx
	movl %edx,%eax
.L733:
	movw %ax,-8(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $0,attrib(%eax)
	jne .L734
	movzwl -8(%ebp),%eax
	movb -4(%ebp),%dl
	movb %dl,memory(%eax)
	jmp .L735
	.align 16
.L734:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L736
	movzbl -4(%ebp),%eax
	pushl %eax
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_PutByte
	addl $8,%esp
	movl %eax,%eax
	testl %eax,%eax
	je .L737
	jmp .L56
	.align 16
.L737:
.L736:
.L735:
	jmp .L578
	.align 16
.L320:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L324:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb -6(%ebp),%dl
	movb %dl,memory(%eax)
	jmp .L578
	.align 16
.L326:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb -4(%ebp),%dl
	movb %dl,memory(%eax)
	jmp .L578
	.align 16
.L328:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb -5(%ebp),%dl
	movb %dl,memory(%eax)
	jmp .L578
	.align 16
.L332:
	decb -6(%ebp)
	movb -6(%ebp),%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L334:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L336:
	movb -5(%ebp),%al
	movb %al,-4(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L340:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $0,attrib(%eax)
	jne .L738
	movzwl -8(%ebp),%eax
	movb -6(%ebp),%dl
	movb %dl,memory(%eax)
	jmp .L739
	.align 16
.L738:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L740
	movzbl -6(%ebp),%eax
	pushl %eax
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_PutByte
	addl $8,%esp
	movl %eax,%eax
	testl %eax,%eax
	je .L741
	jmp .L56
	.align 16
.L741:
.L740:
.L739:
	jmp .L578
	.align 16
.L342:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $0,attrib(%eax)
	jne .L742
	movzwl -8(%ebp),%eax
	movb -4(%ebp),%dl
	movb %dl,memory(%eax)
	jmp .L743
	.align 16
.L742:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L744
	movzbl -4(%ebp),%eax
	pushl %eax
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_PutByte
	addl $8,%esp
	movl %eax,%eax
	testl %eax,%eax
	je .L745
	jmp .L56
	.align 16
.L745:
.L744:
.L743:
	jmp .L578
	.align 16
.L344:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $0,attrib(%eax)
	jne .L746
	movzwl -8(%ebp),%eax
	movb -5(%ebp),%dl
	movb %dl,memory(%eax)
	jmp .L747
	.align 16
.L746:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L748
	movzbl -5(%ebp),%eax
	pushl %eax
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_PutByte
	addl $8,%esp
	movl %eax,%eax
	testl %eax,%eax
	je .L749
	jmp .L56
	.align 16
.L749:
.L748:
.L747:
	jmp .L578
	.align 16
.L348:
	cmpb $0,C
	jne .L750
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-13(%ebp)
	movsbw -13(%ebp),%ax
	addw %ax,-2(%ebp)
.L750:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L350:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib+1(%eax)
	jne .L751
	movzwl -8(%ebp),%eax
	leal 1(%eax),%edx
	pushl %edx
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl %eax,%ebx
	sall $8,%ebx
	movl %ebx,-92(%ebp)
	jmp .L752
	.align 16
.L751:
	movzwl -8(%ebp),%eax
	movzbl memory+1(%eax),%ebx
	movl %ebx,-92(%ebp)
	sall $8,-92(%ebp)
.L752:
	movzbl -6(%ebp),%ebx
	movl %ebx,-96(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L753
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl -92(%ebp),%edx
	orl %eax,%edx
	movl -96(%ebp),%ecx
	addl %edx,%ecx
	movl %ecx,%eax
	jmp .L754
	.align 16
.L753:
	movzwl -8(%ebp),%edx
	movzbl memory(%edx),%ecx
	movl -92(%ebp),%edx
	orl %ecx,%edx
	movl -96(%ebp),%ecx
	addl %edx,%ecx
	movl %ecx,%eax
.L754:
	movw %ax,-8(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $0,attrib(%eax)
	jne .L755
	movzwl -8(%ebp),%eax
	movb -4(%ebp),%dl
	movb %dl,memory(%eax)
	jmp .L756
	.align 16
.L755:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L757
	movzbl -4(%ebp),%eax
	pushl %eax
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_PutByte
	addl $8,%esp
	movl %eax,%eax
	testl %eax,%eax
	je .L758
	jmp .L56
	.align 16
.L758:
.L757:
.L756:
	jmp .L578
	.align 16
.L356:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	addw %ax,%dx
	movl %edx,%ebx
	movb $0,%bh
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb -6(%ebp),%dl
	movb %dl,memory(%eax)
	jmp .L578
	.align 16
.L358:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	addw %ax,%dx
	movl %edx,%ebx
	movb $0,%bh
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb -4(%ebp),%dl
	movb %dl,memory(%eax)
	jmp .L578
	.align 16
.L360:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -6(%ebp),%ax
	addw %ax,%dx
	movl %edx,%ebx
	movb $0,%bh
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $0,attrib(%eax)
	jne .L759
	movzwl -8(%ebp),%eax
	movb -5(%ebp),%dl
	movb %dl,memory(%eax)
	jmp .L760
	.align 16
.L759:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L761
	movzbl -5(%ebp),%eax
	pushl %eax
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_PutByte
	addl $8,%esp
	movl %eax,%eax
	testl %eax,%eax
	je .L762
	jmp .L56
	.align 16
.L762:
.L761:
.L760:
	jmp .L578
	.align 16
.L364:
	movb -6(%ebp),%al
	movb %al,-4(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L366:
	movzwl -2(%ebp),%eax
	movzbw -6(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $0,attrib(%eax)
	jne .L763
	movzwl -8(%ebp),%eax
	movb -4(%ebp),%dl
	movb %dl,memory(%eax)
	jmp .L764
	.align 16
.L763:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L765
	movzbl -4(%ebp),%eax
	pushl %eax
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_PutByte
	addl $8,%esp
	movl %eax,%eax
	testl %eax,%eax
	je .L766
	jmp .L56
	.align 16
.L766:
.L765:
.L764:
	jmp .L578
	.align 16
.L368:
	movb -5(%ebp),%al
	movb %al,-3(%ebp)
	jmp .L578
	.align 16
.L374:
	movzwl -2(%ebp),%eax
	movzbw -5(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $0,attrib(%eax)
	jne .L767
	movzwl -8(%ebp),%eax
	movb -4(%ebp),%dl
	movb %dl,memory(%eax)
	jmp .L768
	.align 16
.L767:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L769
	movzbl -4(%ebp),%eax
	pushl %eax
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_PutByte
	addl $8,%esp
	movl %eax,%eax
	testl %eax,%eax
	je .L770
	jmp .L56
	.align 16
.L770:
.L769:
.L768:
	jmp .L578
	.align 16
.L380:
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-6(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	incw -2(%ebp)
	jmp .L578
	.align 16
.L382:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	movl %edx,%ebx
	addw %ax,%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib+1(%eax)
	jne .L771
	movzwl -8(%ebp),%eax
	leal 1(%eax),%edx
	pushl %edx
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl %eax,%ebx
	sall $8,%ebx
	movl %ebx,-100(%ebp)
	jmp .L772
	.align 16
.L771:
	movzwl -8(%ebp),%eax
	movzbl memory+1(%eax),%ebx
	movl %ebx,-100(%ebp)
	sall $8,-100(%ebp)
.L772:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L773
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl -100(%ebp),%edx
	orl %eax,%edx
	movl %edx,%eax
	jmp .L774
	.align 16
.L773:
	movzwl -8(%ebp),%edx
	movzbl memory(%edx),%ecx
	movl -100(%ebp),%edx
	orl %ecx,%edx
	movl %edx,%eax
.L774:
	movw %ax,-8(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L775
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L776
	.align 16
.L775:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L776:
	movb %al,%al
	movb %al,-4(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L384:
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-5(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	incw -2(%ebp)
	jmp .L578
	.align 16
.L386:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	movl %edx,%ebx
	addw %ax,%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib+1(%eax)
	jne .L777
	movzwl -8(%ebp),%eax
	leal 1(%eax),%edx
	pushl %edx
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl %eax,%ebx
	sall $8,%ebx
	movl %ebx,-104(%ebp)
	jmp .L778
	.align 16
.L777:
	movzwl -8(%ebp),%eax
	movzbl memory+1(%eax),%ebx
	movl %ebx,-104(%ebp)
	sall $8,-104(%ebp)
.L778:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L779
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl -104(%ebp),%edx
	orl %eax,%edx
	movl %edx,%eax
	jmp .L780
	.align 16
.L779:
	movzwl -8(%ebp),%edx
	movzbl memory(%edx),%ecx
	movl -104(%ebp),%edx
	orl %ecx,%edx
	movl %edx,%eax
.L780:
	movw %ax,-8(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L781
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L782
	.align 16
.L781:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L782:
	movb %al,%al
	movb %al,-4(%ebp)
	movb %al,%al
	movb %al,-5(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L388:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-6(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L390:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L392:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-5(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L394:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L783
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L784
	.align 16
.L783:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L784:
	movb %al,%al
	movb %al,-4(%ebp)
	movb %al,%al
	movb %al,-5(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L396:
	movb -4(%ebp),%al
	movb %al,-6(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L398:
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	incw -2(%ebp)
	jmp .L578
	.align 16
.L400:
	movb -4(%ebp),%al
	movb %al,-5(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L404:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L785
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L786
	.align 16
.L785:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L786:
	movb %al,%al
	movb %al,-6(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L406:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L787
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L788
	.align 16
.L787:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L788:
	movb %al,%al
	movb %al,-4(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L408:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L789
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L790
	.align 16
.L789:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L790:
	movb %al,%al
	movb %al,-5(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L410:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L791
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L792
	.align 16
.L791:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L792:
	movb %al,%al
	movb %al,-4(%ebp)
	movb %al,%al
	movb %al,-5(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L412:
	cmpb $0,C
	je .L793
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-13(%ebp)
	movsbw -13(%ebp),%ax
	addw %ax,-2(%ebp)
.L793:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L414:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib+1(%eax)
	jne .L794
	movzwl -8(%ebp),%eax
	leal 1(%eax),%edx
	pushl %edx
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl %eax,%ebx
	sall $8,%ebx
	movl %ebx,-108(%ebp)
	jmp .L795
	.align 16
.L794:
	movzwl -8(%ebp),%eax
	movzbl memory+1(%eax),%ebx
	movl %ebx,-108(%ebp)
	sall $8,-108(%ebp)
.L795:
	movzbl -6(%ebp),%ebx
	movl %ebx,-112(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L796
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl -108(%ebp),%edx
	orl %eax,%edx
	movl -112(%ebp),%ecx
	addl %edx,%ecx
	movl %ecx,%eax
	jmp .L797
	.align 16
.L796:
	movzwl -8(%ebp),%edx
	movzbl memory(%edx),%ecx
	movl -108(%ebp),%edx
	orl %ecx,%edx
	movl -112(%ebp),%ecx
	addl %edx,%ecx
	movl %ecx,%eax
.L797:
	movw %ax,-8(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L798
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L799
	.align 16
.L798:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L799:
	movb %al,%al
	movb %al,-4(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L418:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib+1(%eax)
	jne .L800
	movzwl -8(%ebp),%eax
	leal 1(%eax),%edx
	pushl %edx
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl %eax,%ebx
	sall $8,%ebx
	movl %ebx,-116(%ebp)
	jmp .L801
	.align 16
.L800:
	movzwl -8(%ebp),%eax
	movzbl memory+1(%eax),%ebx
	movl %ebx,-116(%ebp)
	sall $8,-116(%ebp)
.L801:
	movzbl -6(%ebp),%ebx
	movl %ebx,-120(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L802
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl -116(%ebp),%edx
	orl %eax,%edx
	movl -120(%ebp),%ecx
	addl %edx,%ecx
	movl %ecx,%eax
	jmp .L803
	.align 16
.L802:
	movzwl -8(%ebp),%edx
	movzbl memory(%edx),%ecx
	movl -116(%ebp),%edx
	orl %ecx,%edx
	movl -120(%ebp),%ecx
	addl %edx,%ecx
	movl %ecx,%eax
.L803:
	movw %ax,-8(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L804
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L805
	.align 16
.L804:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L805:
	movb %al,%al
	movb %al,-4(%ebp)
	movb %al,%al
	movb %al,-5(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L420:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	addw %ax,%dx
	movl %edx,%ebx
	movb $0,%bh
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-6(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L422:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	addw %ax,%dx
	movl %edx,%ebx
	movb $0,%bh
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-4(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L424:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -6(%ebp),%ax
	addw %ax,%dx
	movl %edx,%ebx
	movb $0,%bh
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L806
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L807
	.align 16
.L806:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L807:
	movb %al,%al
	movb %al,-5(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L426:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -6(%ebp),%ax
	addw %ax,%dx
	movl %edx,%ebx
	movb $0,%bh
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L808
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L809
	.align 16
.L808:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L809:
	movb %al,%al
	movb %al,-4(%ebp)
	movb %al,%al
	movb %al,-5(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L428:
	movb $0,V
	jmp .L578
	.align 16
.L430:
	movzwl -2(%ebp),%eax
	movzbw -6(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L810
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L811
	.align 16
.L810:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L811:
	movb %al,%al
	movb %al,-4(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L432:
	movb -3(%ebp),%al
	movb %al,-5(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L436:
	movzwl -2(%ebp),%eax
	movzbw -5(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L812
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L813
	.align 16
.L812:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L813:
	movb %al,%al
	movb %al,-6(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L438:
	movzwl -2(%ebp),%eax
	movzbw -5(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L814
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L815
	.align 16
.L814:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L815:
	movb %al,%al
	movb %al,-4(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L440:
	movzwl -2(%ebp),%eax
	movzbw -6(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L816
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L817
	.align 16
.L816:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L817:
	movb %al,%al
	movb %al,-5(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L442:
	movzwl -2(%ebp),%eax
	movzbw -6(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L818
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L819
	.align 16
.L818:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L819:
	movb %al,%al
	movb %al,-4(%ebp)
	movb %al,%al
	movb %al,-5(%ebp)
	movb %al,%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L444:
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	incw -2(%ebp)
	movb -6(%ebp),%al
	subb -9(%ebp),%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
	movb -6(%ebp),%al
	cmpb %al,-9(%ebp)
	setbe %al
	movb %al,C
	jmp .L578
	.align 16
.L446:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	movl %edx,%ebx
	addw %ax,%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib+1(%eax)
	jne .L820
	movzwl -8(%ebp),%eax
	leal 1(%eax),%edx
	pushl %edx
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl %eax,%ebx
	sall $8,%ebx
	movl %ebx,-124(%ebp)
	jmp .L821
	.align 16
.L820:
	movzwl -8(%ebp),%eax
	movzbl memory+1(%eax),%ebx
	movl %ebx,-124(%ebp)
	sall $8,-124(%ebp)
.L821:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L822
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl -124(%ebp),%edx
	orl %eax,%edx
	movl %edx,%eax
	jmp .L823
	.align 16
.L822:
	movzwl -8(%ebp),%edx
	movzbl memory(%edx),%ecx
	movl -124(%ebp),%edx
	orl %ecx,%edx
	movl %edx,%eax
.L823:
	movw %ax,-8(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L824
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L825
	.align 16
.L824:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L825:
	movb %al,-9(%ebp)
	movb -4(%ebp),%al
	subb -9(%ebp),%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
	movb -4(%ebp),%al
	cmpb %al,-9(%ebp)
	setbe %al
	movb %al,C
	jmp .L578
	.align 16
.L448:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L452:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	movb -6(%ebp),%al
	subb -9(%ebp),%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
	movb -6(%ebp),%al
	cmpb %al,-9(%ebp)
	setbe %al
	movb %al,C
	jmp .L578
	.align 16
.L454:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	movb -4(%ebp),%al
	subb -9(%ebp),%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
	movb -4(%ebp),%al
	cmpb %al,-9(%ebp)
	setbe %al
	movb %al,C
	jmp .L578
	.align 16
.L456:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	decb memory(%eax)
	movb memory(%eax),%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L460:
	incb -6(%ebp)
	movb -6(%ebp),%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L462:
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	incw -2(%ebp)
	movb -4(%ebp),%al
	subb -9(%ebp),%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
	movb -4(%ebp),%al
	cmpb %al,-9(%ebp)
	setbe %al
	movb %al,C
	jmp .L578
	.align 16
.L464:
	decb -5(%ebp)
	movb -5(%ebp),%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L468:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L826
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L827
	.align 16
.L826:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L827:
	movb %al,-9(%ebp)
	movb -6(%ebp),%al
	subb -9(%ebp),%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
	movb -6(%ebp),%al
	cmpb %al,-9(%ebp)
	setbe %al
	movb %al,C
	jmp .L578
	.align 16
.L470:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L828
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L829
	.align 16
.L828:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L829:
	movb %al,-9(%ebp)
	movb -4(%ebp),%al
	subb -9(%ebp),%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
	movb -4(%ebp),%al
	cmpb %al,-9(%ebp)
	setbe %al
	movb %al,C
	jmp .L578
	.align 16
.L472:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L830
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	decb %al
	jmp .L831
	.align 16
.L830:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
	decb %al
.L831:
	movb %al,%al
	movb %al,N
	movb %al,Z
	movzwl -8(%ebp),%eax
	cmpb $0,attrib(%eax)
	jne .L832
	movzwl -8(%ebp),%eax
	movb Z,%dl
	movb %dl,memory(%eax)
	jmp .L833
	.align 16
.L832:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L834
	movzbl Z,%eax
	pushl %eax
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_PutByte
	addl $8,%esp
	movl %eax,%eax
	testl %eax,%eax
	je .L835
	jmp .L56
	.align 16
.L835:
.L834:
.L833:
	jmp .L578
	.align 16
.L476:
	cmpb $0,Z
	je .L836
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-13(%ebp)
	movsbw -13(%ebp),%ax
	addw %ax,-2(%ebp)
.L836:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L478:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib+1(%eax)
	jne .L837
	movzwl -8(%ebp),%eax
	leal 1(%eax),%edx
	pushl %edx
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl %eax,%ebx
	sall $8,%ebx
	movl %ebx,-128(%ebp)
	jmp .L838
	.align 16
.L837:
	movzwl -8(%ebp),%eax
	movzbl memory+1(%eax),%ebx
	movl %ebx,-128(%ebp)
	sall $8,-128(%ebp)
.L838:
	movzbl -6(%ebp),%ebx
	movl %ebx,-132(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L839
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl -128(%ebp),%edx
	orl %eax,%edx
	movl -132(%ebp),%ecx
	addl %edx,%ecx
	movl %ecx,%eax
	jmp .L840
	.align 16
.L839:
	movzwl -8(%ebp),%edx
	movzbl memory(%edx),%ecx
	movl -128(%ebp),%edx
	orl %ecx,%edx
	movl -132(%ebp),%ecx
	addl %edx,%ecx
	movl %ecx,%eax
.L840:
	movw %ax,-8(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L841
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L842
	.align 16
.L841:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L842:
	movb %al,-9(%ebp)
	movb -4(%ebp),%al
	subb -9(%ebp),%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
	movb -4(%ebp),%al
	cmpb %al,-9(%ebp)
	setbe %al
	movb %al,C
	jmp .L578
	.align 16
.L484:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L486:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	addw %ax,%dx
	movl %edx,%ebx
	movb $0,%bh
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	movb -4(%ebp),%al
	subb -9(%ebp),%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
	movb -4(%ebp),%al
	cmpb %al,-9(%ebp)
	setbe %al
	movb %al,C
	movb -4(%ebp),%al
	subb -9(%ebp),%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
	movb -4(%ebp),%al
	cmpb %al,-9(%ebp)
	setbe %al
	movb %al,C
	jmp .L578
	.align 16
.L488:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	addw %ax,%dx
	movl %edx,%ebx
	movb $0,%bh
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	decb memory(%eax)
	movb memory(%eax),%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L492:
	andb $247,regP
	jmp .L578
	.align 16
.L494:
	movzwl -2(%ebp),%eax
	movzbw -6(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L843
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L844
	.align 16
.L843:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L844:
	movb %al,-9(%ebp)
	movb -4(%ebp),%al
	subb -9(%ebp),%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
	movb -4(%ebp),%al
	cmpb %al,-9(%ebp)
	setbe %al
	movb %al,C
	jmp .L578
	.align 16
.L496:
	jmp .L578
	.align 16
.L500:
	addw $2,-2(%ebp)
	jmp .L578
	.align 16
.L502:
	movzwl -2(%ebp),%eax
	movzbw -5(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L845
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L846
	.align 16
.L845:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L846:
	movb %al,-9(%ebp)
	movb -4(%ebp),%al
	subb -9(%ebp),%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
	movb -4(%ebp),%al
	cmpb %al,-9(%ebp)
	setbe %al
	movb %al,C
	jmp .L578
	.align 16
.L504:
	movzwl -2(%ebp),%eax
	movzbw -5(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L847
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	decb %al
	jmp .L848
	.align 16
.L847:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
	decb %al
.L848:
	movb %al,%al
	movb %al,N
	movb %al,Z
	movzwl -8(%ebp),%eax
	cmpb $0,attrib(%eax)
	jne .L849
	movzwl -8(%ebp),%eax
	movb Z,%dl
	movb %dl,memory(%eax)
	jmp .L850
	.align 16
.L849:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L851
	movzbl Z,%eax
	pushl %eax
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_PutByte
	addl $8,%esp
	movl %eax,%eax
	testl %eax,%eax
	je .L852
	jmp .L56
	.align 16
.L852:
.L851:
.L850:
	jmp .L578
	.align 16
.L508:
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	incw -2(%ebp)
	movb -5(%ebp),%al
	subb -9(%ebp),%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
	movb -5(%ebp),%al
	cmpb %al,-9(%ebp)
	setbe %al
	movb %al,C
	jmp .L578
	.align 16
.L510:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	movl %edx,%ebx
	addw %ax,%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib+1(%eax)
	jne .L853
	movzwl -8(%ebp),%eax
	leal 1(%eax),%edx
	pushl %edx
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl %eax,%ebx
	sall $8,%ebx
	movl %ebx,-136(%ebp)
	jmp .L854
	.align 16
.L853:
	movzwl -8(%ebp),%eax
	movzbl memory+1(%eax),%ebx
	movl %ebx,-136(%ebp)
	sall $8,-136(%ebp)
.L854:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L855
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl -136(%ebp),%edx
	orl %eax,%edx
	movl %edx,%eax
	jmp .L856
	.align 16
.L855:
	movzwl -8(%ebp),%edx
	movzbl memory(%edx),%ecx
	movl -136(%ebp),%edx
	orl %ecx,%edx
	movl %edx,%eax
.L856:
	movw %ax,-8(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L857
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L858
	.align 16
.L857:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L858:
	movb %al,-9(%ebp)
	jmp .L859
	.align 16
.L512:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L516:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	movb -5(%ebp),%al
	subb -9(%ebp),%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
	movb -5(%ebp),%al
	cmpb %al,-9(%ebp)
	setbe %al
	movb %al,C
	jmp .L578
	.align 16
.L518:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	jmp .L859
	.align 16
.L520:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	incb memory(%eax)
	movb memory(%eax),%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L524:
	incb -5(%ebp)
	movb -5(%ebp),%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L526:
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	incw -2(%ebp)
	jmp .L859
	.align 16
.L528:
	jmp .L578
	.align 16
.L532:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L860
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L861
	.align 16
.L860:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L861:
	movb %al,-9(%ebp)
	movb -5(%ebp),%al
	subb -9(%ebp),%al
	movb %al,%dl
	movb %dl,N
	movb %dl,Z
	movb -5(%ebp),%al
	cmpb %al,-9(%ebp)
	setbe %al
	movb %al,C
	jmp .L578
	.align 16
.L534:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L862
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L863
	.align 16
.L862:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L863:
	movb %al,-9(%ebp)
	jmp .L859
	.align 16
.L536:
	movzwl -2(%ebp),%eax
#APP
	movw memory(%eax),%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L864
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	incb %al
	jmp .L865
	.align 16
.L864:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
	incb %al
.L865:
	movb %al,%al
	movb %al,N
	movb %al,Z
	movzwl -8(%ebp),%eax
	cmpb $0,attrib(%eax)
	jne .L866
	movzwl -8(%ebp),%eax
	movb Z,%dl
	movb %dl,memory(%eax)
	jmp .L867
	.align 16
.L866:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L868
	movzbl Z,%eax
	pushl %eax
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_PutByte
	addl $8,%esp
	movl %eax,%eax
	testl %eax,%eax
	je .L869
	jmp .L56
	.align 16
.L869:
.L868:
.L867:
	jmp .L578
	.align 16
.L540:
	cmpb $0,Z
	jne .L870
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-13(%ebp)
	movsbw -13(%ebp),%ax
	addw %ax,-2(%ebp)
.L870:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L542:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%bx
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib+1(%eax)
	jne .L871
	movzwl -8(%ebp),%eax
	leal 1(%eax),%edx
	pushl %edx
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl %eax,%ebx
	sall $8,%ebx
	movl %ebx,-140(%ebp)
	jmp .L872
	.align 16
.L871:
	movzwl -8(%ebp),%eax
	movzbl memory+1(%eax),%ebx
	movl %ebx,-140(%ebp)
	sall $8,-140(%ebp)
.L872:
	movzbl -6(%ebp),%ebx
	movl %ebx,-144(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L873
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%eax
	movl -140(%ebp),%edx
	orl %eax,%edx
	movl -144(%ebp),%ecx
	addl %edx,%ecx
	movl %ecx,%eax
	jmp .L874
	.align 16
.L873:
	movzwl -8(%ebp),%edx
	movzbl memory(%edx),%ecx
	movl -140(%ebp),%edx
	orl %ecx,%edx
	movl -144(%ebp),%ecx
	addl %edx,%ecx
	movl %ecx,%eax
.L874:
	movw %ax,-8(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L875
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L876
	.align 16
.L875:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L876:
	movb %al,-9(%ebp)
	jmp .L859
	.align 16
.L548:
	incw -2(%ebp)
	jmp .L578
	.align 16
.L550:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	addw %ax,%dx
	movl %edx,%ebx
	movb $0,%bh
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	jmp .L859
	.align 16
.L552:
	movzwl -2(%ebp),%eax
	movzbw memory(%eax),%dx
	movzbw -5(%ebp),%ax
	addw %ax,%dx
	movl %edx,%ebx
	movb $0,%bh
	movw %bx,-8(%ebp)
	incw -2(%ebp)
	movzwl -8(%ebp),%eax
	incb memory(%eax)
	movb memory(%eax),%al
	movb %al,N
	movb %al,Z
	jmp .L578
	.align 16
.L556:
	orb $8,regP
	jmp .L578
	.align 16
.L558:
	movzwl -2(%ebp),%eax
	movzbw -6(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L877
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L878
	.align 16
.L877:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L878:
	movb %al,-9(%ebp)
	jmp .L859
	.align 16
.L560:
	jmp .L578
	.align 16
.L564:
	addw $2,-2(%ebp)
	jmp .L578
	.align 16
.L566:
	movzwl -2(%ebp),%eax
	movzbw -5(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L879
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	jmp .L880
	.align 16
.L879:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
.L880:
	movb %al,-9(%ebp)
	jmp .L859
	.align 16
.L568:
	movzwl -2(%ebp),%eax
	movzbw -5(%ebp),%dx
#APP
	movw memory(%eax),%bx; addw %dx,%bx
#NO_APP
	movw %bx,-8(%ebp)
	addw $2,-2(%ebp)
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L881
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_GetByte
	addl $4,%esp
	movl %eax,%edx
	movb %dl,%al
	incb %al
	jmp .L882
	.align 16
.L881:
	movzwl -8(%ebp),%edx
	movb memory(%edx),%al
	incb %al
.L882:
	movb %al,%al
	movb %al,N
	movb %al,Z
	movzwl -8(%ebp),%eax
	cmpb $0,attrib(%eax)
	jne .L883
	movzwl -8(%ebp),%eax
	movb Z,%dl
	movb %dl,memory(%eax)
	jmp .L884
	.align 16
.L883:
	movzwl -8(%ebp),%eax
	cmpb $2,attrib(%eax)
	jne .L885
	movzbl Z,%eax
	pushl %eax
	movzwl -8(%ebp),%eax
	pushl %eax
	call Atari800_PutByte
	addl $8,%esp
	movl %eax,%eax
	testl %eax,%eax
	je .L886
	jmp .L56
	.align 16
.L886:
.L885:
.L884:
	jmp .L578
	.align 16
.L480:
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	incw -2(%ebp)
	movw -2(%ebp),%ax
	movw %ax,regPC
	movb -3(%ebp),%al
	movb %al,regS
	movb -4(%ebp),%al
	movb %al,regA
	movb -5(%ebp),%al
	movb %al,regX
	movb -6(%ebp),%al
	movb %al,regY
	call CPU_GetStatus
	movzbl -9(%ebp),%eax
	pushl %eax
	call Escape
	addl $4,%esp
	call CPU_PutStatus
	movw regPC,%ax
	movw %ax,-2(%ebp)
	movb regS,%al
	movb %al,-3(%ebp)
	movb regA,%al
	movb %al,-4(%ebp)
	movb regX,%al
	movb %al,-5(%ebp)
	movb regY,%al
	movb %al,-6(%ebp)
	incb -3(%ebp)
	movzbl -3(%ebp),%eax
	movb memory+256(%eax),%dl
	movb %dl,-9(%ebp)
	incb -3(%ebp)
	movzbl -3(%ebp),%eax
	movzbw memory+256(%eax),%dx
	movl %edx,%eax
	salw $8,%ax
	movzbw -9(%ebp),%dx
	orw %dx,%ax
	movl %eax,%ebx
	incw %bx
	movw %bx,-2(%ebp)
	jmp .L578
	.align 16
.L544:
	nop
.L570:
	movzwl -2(%ebp),%eax
	movb memory(%eax),%dl
	movb %dl,-9(%ebp)
	incw -2(%ebp)
	movw -2(%ebp),%ax
	movw %ax,regPC
	movb -3(%ebp),%al
	movb %al,regS
	movb -4(%ebp),%al
	movb %al,regA
	movb -5(%ebp),%al
	movb %al,regX
	movb -6(%ebp),%al
	movb %al,regY
	call CPU_GetStatus
	movzbl -9(%ebp),%eax
	pushl %eax
	call Escape
	addl $4,%esp
	call CPU_PutStatus
	movw regPC,%ax
	movw %ax,-2(%ebp)
	movb regS,%al
	movb %al,-3(%ebp)
	movb regA,%al
	movb %al,-4(%ebp)
	movb regX,%al
	movb %al,-5(%ebp)
	movb regY,%al
	movb %al,-6(%ebp)
	jmp .L578
	.align 16
.L64:
	nop
.L66:
	nop
.L74:
	nop
.L82:
	nop
.L90:
	nop
.L96:
	nop
.L98:
	nop
.L106:
	nop
.L114:
	nop
.L122:
	nop
.L128:
	nop
.L130:
	nop
.L138:
	nop
.L146:
	nop
.L154:
	nop
.L160:
	nop
.L162:
	nop
.L170:
	nop
.L178:
	nop
.L186:
	nop
.L192:
	nop
.L194:
	nop
.L202:
	nop
.L210:
	nop
.L218:
	nop
.L224:
	nop
.L226:
	nop
.L234:
	nop
.L242:
	nop
.L250:
	nop
.L256:
	nop
.L258:
	nop
.L266:
	nop
.L274:
	nop
.L282:
	nop
.L288:
	nop
.L290:
	nop
.L298:
	nop
.L306:
	nop
.L314:
	nop
.L322:
	nop
.L330:
	nop
.L338:
	nop
.L346:
	nop
.L352:
	nop
.L354:
	nop
.L362:
	nop
.L370:
	nop
.L372:
	nop
.L376:
	nop
.L378:
	nop
.L402:
	nop
.L416:
	nop
.L434:
	nop
.L450:
	nop
.L458:
	nop
.L466:
	nop
.L474:
	nop
.L482:
	nop
.L490:
	nop
.L498:
	nop
.L506:
	nop
.L514:
	nop
.L522:
	nop
.L530:
	nop
.L538:
	nop
.L546:
	nop
.L554:
	nop
.L562:
	movw -2(%ebp),%ax
	movw %ax,regPC
	movb -3(%ebp),%al
	movb %al,regS
	movb -4(%ebp),%al
	movb %al,regA
	movb -5(%ebp),%al
	movb %al,regX
	movb -6(%ebp),%al
	movb %al,regY
	movzwl -2(%ebp),%eax
	leal -1(%eax),%edx
	pushl %edx
	movzwl -2(%ebp),%eax
	movzbl memory-1(%eax),%edx
	pushl %edx
	pushl $.LC1
	pushl $_IO_stderr_
	call fprintf
	addl $16,%esp
	movl $1,8(%ebp)
	jmp .L56
	.align 16
.L694:
	movb regP,%al
	andb $8,%al
	testb %al,%al
	jne .L887
	movzbw -4(%ebp),%ax
	movzbw -9(%ebp),%dx
	addw %dx,%ax
	movzbw C,%dx
	addw %dx,%ax
	movl %eax,%edx
	movw %dx,-12(%ebp)
	movb %dl,%al
	movb %al,N
	movb %al,Z
	movw -12(%ebp),%ax
	shrw $8,%ax
	movb %al,C
	movb Z,%al
	xorb -4(%ebp),%al
	movb %al,%bl
	andb $128,%bl
	movb %bl,V
	movb Z,%al
	movb %al,-4(%ebp)
	jmp .L888
	.align 16
.L887:
	movzbl -4(%ebp),%eax
	movzbl BCDtoDEC(%eax),%ebx
	movl %ebx,-20(%ebp)
	movzbl -9(%ebp),%eax
	movzbl BCDtoDEC(%eax),%ebx
	movl %ebx,-24(%ebp)
	movzbl C,%eax
	movl %eax,%edx
	addl -24(%ebp),%edx
	addl %edx,-20(%ebp)
	movl -20(%ebp),%eax
	addl $DECtoBCD,%eax
	movb (%eax),%dl
	movb %dl,N
	movb %dl,Z
	cmpl $99,-20(%ebp)
	setg %al
	movb %al,C
	movb Z,%al
	xorb -4(%ebp),%al
	movb %al,%bl
	andb $128,%bl
	movb %bl,V
	movb Z,%al
	movb %al,-4(%ebp)
.L888:
	jmp .L578
	.align 16
.L859:
	movb regP,%al
	andb $8,%al
	testb %al,%al
	jne .L889
	movzbl -4(%ebp),%ebx
	movl %ebx,-148(%ebp)
	movzbl -9(%ebp),%eax
	subl %eax,-148(%ebp)
	cmpb $0,C
	jne .L890
	movl -148(%ebp),%edx
	decl %edx
	movl %edx,%eax
	jmp .L891
	.align 16
.L890:
	movw -148(%ebp),%ax
.L891:
	movw %ax,-12(%ebp)
	movb -12(%ebp),%al
	movb %al,N
	movb %al,Z
	movzbl -9(%ebp),%ebx
	movl %ebx,-152(%ebp)
	movzbl -4(%ebp),%ebx
	movl %ebx,-156(%ebp)
	cmpb $0,C
	jne .L892
	movl -152(%ebp),%eax
	incl %eax
	cmpl %eax,-156(%ebp)
	setge %al
	jmp .L893
	.align 16
.L892:
	movl -152(%ebp),%ebx
	cmpl %ebx,-156(%ebp)
	setge %al
.L893:
	movb %al,C
	movb Z,%al
	xorb -4(%ebp),%al
	movb %al,%bl
	andb $128,%bl
	movb %bl,V
	movb Z,%al
	movb %al,-4(%ebp)
	jmp .L894
	.align 16
.L889:
	movzbl -4(%ebp),%eax
	movzbl BCDtoDEC(%eax),%ebx
	movl %ebx,-24(%ebp)
	movzbl -9(%ebp),%eax
	movzbl BCDtoDEC(%eax),%ebx
	movl %ebx,-20(%ebp)
	movl -24(%ebp),%ebx
	subl -20(%ebp),%ebx
	movl %ebx,-160(%ebp)
	movl -160(%ebp),%eax
	cmpb $0,C
	jne .L895
	decl %eax
.L895:
	movl %eax,-24(%ebp)
	cmpl $0,-24(%ebp)
	jge .L896
	movl -24(%ebp),%eax
	negl %eax
	movl $100,%ebx
	subl %eax,%ebx
	movl %ebx,-24(%ebp)
.L896:
	movl -24(%ebp),%eax
	addl $DECtoBCD,%eax
	movb (%eax),%dl
	movb %dl,N
	movb %dl,Z
	movzbl -9(%ebp),%ebx
	movl %ebx,-164(%ebp)
	movzbl -4(%ebp),%ebx
	movl %ebx,-168(%ebp)
	cmpb $0,C
	jne .L897
	movl -164(%ebp),%eax
	incl %eax
	cmpl %eax,-168(%ebp)
	setge %al
	jmp .L898
	.align 16
.L897:
	movl -164(%ebp),%ebx
	cmpl %ebx,-168(%ebp)
	setge %al
.L898:
	movb %al,C
	movb Z,%al
	xorb -4(%ebp),%al
	movb %al,%bl
	andb $128,%bl
	movb %bl,V
	movb Z,%al
	movb %al,-4(%ebp)
.L894:
	jmp .L578
	.align 16
.L578:
	jmp .L55
	.align 16
	jmp .L55
	.align 16
.L56:
	movw -2(%ebp),%ax
	movw %ax,regPC
	movb -3(%ebp),%al
	movb %al,regS
	movb -4(%ebp),%al
	movb %al,regA
	movb -5(%ebp),%al
	movb %al,regX
	movb -6(%ebp),%al
	movb %al,regY
.L48:
	leal -184(%ebp),%esp
	popl %ebx
	popl %esi
	popl %edi
	movl %ebp,%esp
	popl %ebp
	ret
.Lfe8:
	.size	 GO,.Lfe8-GO
	.comm	regPC,2,2
	.comm	regA,1,1
	.comm	regP,1,1
	.comm	regS,1,1
	.comm	regY,1,1
	.comm	regX,1,1
	.comm	memory,65536,1
	.comm	IRQ,4,4
	.local	N
	.comm	N,1,1
	.local	Z
	.comm	Z,1,1
	.local	V
	.comm	V,1,1
	.local	C
	.comm	C,1,1
	.comm	count,1024,4
	.local	attrib
	.comm	attrib,65536,1
	.comm	BCDtoDEC,256,1
	.comm	DECtoBCD,256,1
	.ident	"GCC: (GNU) 2.7.2"
