-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbootpack.lst
1280 lines (1280 loc) · 74.8 KB
/
bootpack.lst
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1 00000000 [FORMAT "WCOFF"]
2 00000000 [INSTRSET "i486p"]
3 00000000 [OPTIMIZE 1]
4 00000000 [OPTION 1]
5 00000000 [BITS 32]
6 00000000 EXTERN _init_palette
7 00000000 EXTERN _shtctl_init
8 00000000 EXTERN _task_init
9 00000000 EXTERN _task_run
10 00000000 EXTERN _sheet_alloc
11 00000000 EXTERN _memman_alloc_4k
12 00000000 EXTERN _sheet_setbuf
13 00000000 EXTERN _init_screen8
14 00000000 EXTERN _make_window8
15 00000000 EXTERN _make_textbox8
16 00000000 EXTERN _task_alloc
17 00000000 EXTERN _console_task
18 00000000 EXTERN _timer_alloc
19 00000000 EXTERN _timer_init
20 00000000 EXTERN _timer_settime
21 00000000 EXTERN _init_mouse_cursor8
22 00000000 EXTERN _sheet_slide
23 00000000 EXTERN _sheet_updown
24 00000000 EXTERN _memtest
25 00000000 EXTERN _memman_init
26 00000000 EXTERN _memman_free
27 00000000 EXTERN _init_gdtidt
28 00000000 EXTERN _init_pic
29 00000000 EXTERN _io_sti
30 00000000 EXTERN _fifo32_init
31 00000000 EXTERN _init_pit
32 00000000 EXTERN _init_keyboard
33 00000000 EXTERN _enable_mouse
34 00000000 EXTERN _io_out8
35 00000000 EXTERN _fifo32_put
36 00000000 EXTERN _fifo32_status
37 00000000 EXTERN _io_cli
38 00000000 EXTERN _fifo32_get
39 00000000 EXTERN _boxfill8
40 00000000 EXTERN _sheet_refresh
41 00000000 EXTERN _mouse_decode
42 00000000 EXTERN _putfonts8_asc_sht
43 00000000 EXTERN _wait_KBC_sendready
44 00000000 EXTERN _make_wtitle8
45 00000000 EXTERN _task_sleep
46 00000000 [FILE "bootpack.c"]
47 00000000 GLOBAL _binfo
48 [SECTION .data]
49 00000000 ALIGNB 4
50 00000000 _binfo:
51 00000000 00000FF0 DD 4080
52 00000004 GLOBAL _memman
53 00000004 ALIGNB 4
54 00000004 _memman:
55 00000004 003C0000 DD 3932160
56 00000008 GLOBAL _key_to
57 00000008 ALIGNB 4
58 00000008 _key_to:
59 00000008 00000000 DD 0
60 0000000C GLOBAL _key_shift
61 0000000C ALIGNB 4
62 0000000C _key_shift:
63 0000000C 00000000 DD 0
64 00000010 GLOBAL _key_leds
65 00000010 ALIGNB 4
66 00000010 _key_leds:
67 00000010 00000000 DD 0
68 00000014 GLOBAL _keycmd_wait
69 00000014 ALIGNB 4
70 00000014 _keycmd_wait:
71 00000014 FFFFFFFF DD -1
72 00000018 _keytable0:
73 00000018 00 DB 0
74 00000019 00 DB 0
75 0000001A 31 DB 49
76 0000001B 32 DB 50
77 0000001C 33 DB 51
78 0000001D 34 DB 52
79 0000001E 35 DB 53
80 0000001F 36 DB 54
81 00000020 37 DB 55
82 00000021 38 DB 56
83 00000022 39 DB 57
84 00000023 30 DB 48
85 00000024 2D DB 45
86 00000025 5E DB 94
87 00000026 00 DB 0
88 00000027 00 DB 0
89 00000028 51 DB 81
90 00000029 57 DB 87
91 0000002A 45 DB 69
92 0000002B 52 DB 82
93 0000002C 54 DB 84
94 0000002D 59 DB 89
95 0000002E 55 DB 85
96 0000002F 49 DB 73
97 00000030 4F DB 79
98 00000031 50 DB 80
99 00000032 40 DB 64
100 00000033 5B DB 91
101 00000034 00 DB 0
102 00000035 00 DB 0
103 00000036 41 DB 65
104 00000037 53 DB 83
105 00000038 44 DB 68
106 00000039 46 DB 70
107 0000003A 47 DB 71
108 0000003B 48 DB 72
109 0000003C 4A DB 74
110 0000003D 4B DB 75
111 0000003E 4C DB 76
112 0000003F 3B DB 59
113 00000040 3A DB 58
114 00000041 00 DB 0
115 00000042 00 DB 0
116 00000043 5D DB 93
117 00000044 5A DB 90
118 00000045 58 DB 88
119 00000046 43 DB 67
120 00000047 56 DB 86
121 00000048 42 DB 66
122 00000049 4E DB 78
123 0000004A 4D DB 77
124 0000004B 2C DB 44
125 0000004C 2E DB 46
126 0000004D 2F DB 47
127 0000004E 00 DB 0
128 0000004F 2A DB 42
129 00000050 00 DB 0
130 00000051 20 DB 32
131 00000052 00 DB 0
132 00000053 00 DB 0
133 00000054 00 DB 0
134 00000055 00 DB 0
135 00000056 00 DB 0
136 00000057 00 DB 0
137 00000058 00 DB 0
138 00000059 00 DB 0
139 0000005A 00 DB 0
140 0000005B 00 DB 0
141 0000005C 00 DB 0
142 0000005D 00 DB 0
143 0000005E 00 DB 0
144 0000005F 37 DB 55
145 00000060 38 DB 56
146 00000061 39 DB 57
147 00000062 2D DB 45
148 00000063 34 DB 52
149 00000064 35 DB 53
150 00000065 36 DB 54
151 00000066 2B DB 43
152 00000067 31 DB 49
153 00000068 32 DB 50
154 00000069 33 DB 51
155 0000006A 30 DB 48
156 0000006B 2E DB 46
157 0000006C 00 DB 0
158 0000006D 00 DB 0
159 0000006E 00 DB 0
160 0000006F 00 DB 0
161 00000070 00 DB 0
162 00000071 00 DB 0
163 00000072 00 DB 0
164 00000073 00 DB 0
165 00000074 00 DB 0
166 00000075 00 DB 0
167 00000076 00 DB 0
168 00000077 00 DB 0
169 00000078 00 DB 0
170 00000079 00 DB 0
171 0000007A 00 DB 0
172 0000007B 00 DB 0
173 0000007C 00 DB 0
174 0000007D 00 DB 0
175 0000007E 00 DB 0
176 0000007F 00 DB 0
177 00000080 00 DB 0
178 00000081 00 DB 0
179 00000082 00 DB 0
180 00000083 00 DB 0
181 00000084 00 DB 0
182 00000085 00 DB 0
183 00000086 00 DB 0
184 00000087 00 DB 0
185 00000088 00 DB 0
186 00000089 00 DB 0
187 0000008A 00 DB 0
188 0000008B 5C DB 92
189 0000008C 00 DB 0
190 0000008D 00 DB 0
191 0000008E 00 DB 0
192 0000008F 00 DB 0
193 00000090 00 DB 0
194 00000091 00 DB 0
195 00000092 00 DB 0
196 00000093 00 DB 0
197 00000094 00 DB 0
198 00000095 5C DB 92
199 00000096 00 DB 0
200 00000097 00 DB 0
201 00000098 _keytable1:
202 00000098 00 DB 0
203 00000099 00 DB 0
204 0000009A 21 DB 33
205 0000009B 22 DB 34
206 0000009C 23 DB 35
207 0000009D 24 DB 36
208 0000009E 25 DB 37
209 0000009F 26 DB 38
210 000000A0 27 DB 39
211 000000A1 28 DB 40
212 000000A2 29 DB 41
213 000000A3 7E DB 126
214 000000A4 3D DB 61
215 000000A5 7E DB 126
216 000000A6 00 DB 0
217 000000A7 00 DB 0
218 000000A8 51 DB 81
219 000000A9 57 DB 87
220 000000AA 45 DB 69
221 000000AB 52 DB 82
222 000000AC 54 DB 84
223 000000AD 59 DB 89
224 000000AE 55 DB 85
225 000000AF 49 DB 73
226 000000B0 4F DB 79
227 000000B1 50 DB 80
228 000000B2 60 DB 96
229 000000B3 7B DB 123
230 000000B4 00 DB 0
231 000000B5 00 DB 0
232 000000B6 41 DB 65
233 000000B7 53 DB 83
234 000000B8 44 DB 68
235 000000B9 46 DB 70
236 000000BA 47 DB 71
237 000000BB 48 DB 72
238 000000BC 4A DB 74
239 000000BD 4B DB 75
240 000000BE 4C DB 76
241 000000BF 2B DB 43
242 000000C0 2A DB 42
243 000000C1 00 DB 0
244 000000C2 00 DB 0
245 000000C3 7D DB 125
246 000000C4 5A DB 90
247 000000C5 58 DB 88
248 000000C6 43 DB 67
249 000000C7 56 DB 86
250 000000C8 42 DB 66
251 000000C9 4E DB 78
252 000000CA 4D DB 77
253 000000CB 3C DB 60
254 000000CC 3E DB 62
255 000000CD 3F DB 63
256 000000CE 00 DB 0
257 000000CF 2A DB 42
258 000000D0 00 DB 0
259 000000D1 20 DB 32
260 000000D2 00 DB 0
261 000000D3 00 DB 0
262 000000D4 00 DB 0
263 000000D5 00 DB 0
264 000000D6 00 DB 0
265 000000D7 00 DB 0
266 000000D8 00 DB 0
267 000000D9 00 DB 0
268 000000DA 00 DB 0
269 000000DB 00 DB 0
270 000000DC 00 DB 0
271 000000DD 00 DB 0
272 000000DE 00 DB 0
273 000000DF 37 DB 55
274 000000E0 38 DB 56
275 000000E1 39 DB 57
276 000000E2 2D DB 45
277 000000E3 34 DB 52
278 000000E4 35 DB 53
279 000000E5 36 DB 54
280 000000E6 2B DB 43
281 000000E7 31 DB 49
282 000000E8 32 DB 50
283 000000E9 33 DB 51
284 000000EA 30 DB 48
285 000000EB 2E DB 46
286 000000EC 00 DB 0
287 000000ED 00 DB 0
288 000000EE 00 DB 0
289 000000EF 00 DB 0
290 000000F0 00 DB 0
291 000000F1 00 DB 0
292 000000F2 00 DB 0
293 000000F3 00 DB 0
294 000000F4 00 DB 0
295 000000F5 00 DB 0
296 000000F6 00 DB 0
297 000000F7 00 DB 0
298 000000F8 00 DB 0
299 000000F9 00 DB 0
300 000000FA 00 DB 0
301 000000FB 00 DB 0
302 000000FC 00 DB 0
303 000000FD 00 DB 0
304 000000FE 00 DB 0
305 000000FF 00 DB 0
306 00000100 00 DB 0
307 00000101 00 DB 0
308 00000102 00 DB 0
309 00000103 00 DB 0
310 00000104 00 DB 0
311 00000105 00 DB 0
312 00000106 00 DB 0
313 00000107 00 DB 0
314 00000108 00 DB 0
315 00000109 00 DB 0
316 0000010A 00 DB 0
317 0000010B 5F DB 95
318 0000010C 00 DB 0
319 0000010D 00 DB 0
320 0000010E 00 DB 0
321 0000010F 00 DB 0
322 00000110 00 DB 0
323 00000111 00 DB 0
324 00000112 00 DB 0
325 00000113 00 DB 0
326 00000114 00 DB 0
327 00000115 7C DB 124
328 00000116 00 DB 0
329 00000117 00 DB 0
330 00000118 LC0:
331 00000118 63 6F 6E 73 6F 6C 65 00 DB "console",0x00
332 00000120 LC1:
333 00000120 74 61 73 6B 5F 61 00 DB "task_a",0x00
334 [SECTION .text]
335 00000000 GLOBAL _initGUI
336 00000000 _initGUI:
337 00000000 55 PUSH EBP
338 00000001 89 E5 MOV EBP,ESP
339 00000003 53 PUSH EBX
340 00000004 83 EC 10 SUB ESP,16
341 00000007 E8 [00000000] CALL _init_palette
342 0000000C 8B 15 [00000000] MOV EDX,DWORD [_binfo]
343 00000012 0F BF 42 06 MOVSX EAX,WORD [6+EDX]
344 00000016 50 PUSH EAX
345 00000017 0F BF 42 04 MOVSX EAX,WORD [4+EDX]
346 0000001B 50 PUSH EAX
347 0000001C FF 72 08 PUSH DWORD [8+EDX]
348 0000001F FF 35 [00000004] PUSH DWORD [_memman]
349 00000025 E8 [00000000] CALL _shtctl_init
350 0000002A FF 35 [00000004] PUSH DWORD [_memman]
351 00000030 A3 [0000012C] MOV DWORD [_shtctl],EAX
352 00000035 E8 [00000000] CALL _task_init
353 0000003A 6A 02 PUSH 2
354 0000003C A3 [00000578] MOV DWORD [_task_a],EAX
355 00000041 6A 01 PUSH 1
356 00000043 A3 [00000178] MOV DWORD [_fifo+24],EAX
357 00000048 50 PUSH EAX
358 00000049 E8 [00000000] CALL _task_run
359 0000004E 83 C4 20 ADD ESP,32
360 00000051 FF 35 [0000012C] PUSH DWORD [_shtctl]
361 00000057 E8 [00000000] CALL _sheet_alloc
362 0000005C 8B 0D [00000000] MOV ECX,DWORD [_binfo]
363 00000062 A3 [00000568] MOV DWORD [_sht_back],EAX
364 00000067 0F BF 59 06 MOVSX EBX,WORD [6+ECX]
365 0000006B 0F BF 41 04 MOVSX EAX,WORD [4+ECX]
366 0000006F 0F AF C3 IMUL EAX,EBX
367 00000072 50 PUSH EAX
368 00000073 FF 35 [00000004] PUSH DWORD [_memman]
369 00000079 E8 [00000000] CALL _memman_alloc_4k
370 0000007E 8B 0D [00000000] MOV ECX,DWORD [_binfo]
371 00000084 6A FF PUSH -1
372 00000086 A3 [00000450] MOV DWORD [_buf_back],EAX
373 0000008B 0F BF 51 06 MOVSX EDX,WORD [6+ECX]
374 0000008F 52 PUSH EDX
375 00000090 0F BF 49 04 MOVSX ECX,WORD [4+ECX]
376 00000094 51 PUSH ECX
377 00000095 50 PUSH EAX
378 00000096 FF 35 [00000568] PUSH DWORD [_sht_back]
379 0000009C E8 [00000000] CALL _sheet_setbuf
380 000000A1 8B 0D [00000000] MOV ECX,DWORD [_binfo]
381 000000A7 83 C4 20 ADD ESP,32
382 000000AA 0F BF 41 06 MOVSX EAX,WORD [6+ECX]
383 000000AE 50 PUSH EAX
384 000000AF 0F BF 41 04 MOVSX EAX,WORD [4+ECX]
385 000000B3 50 PUSH EAX
386 000000B4 FF 35 [00000450] PUSH DWORD [_buf_back]
387 000000BA E8 [00000000] CALL _init_screen8
388 000000BF FF 35 [0000012C] PUSH DWORD [_shtctl]
389 000000C5 E8 [00000000] CALL _sheet_alloc
390 000000CA 68 0000A500 PUSH 42240
391 000000CF FF 35 [00000004] PUSH DWORD [_memman]
392 000000D5 A3 [00000574] MOV DWORD [_sht_cons],EAX
393 000000DA E8 [00000000] CALL _memman_alloc_4k
394 000000DF 6A FF PUSH -1
395 000000E1 A3 [00000564] MOV DWORD [_buf_cons],EAX
396 000000E6 68 000000A5 PUSH 165
397 000000EB 68 00000100 PUSH 256
398 000000F0 50 PUSH EAX
399 000000F1 FF 35 [00000574] PUSH DWORD [_sht_cons]
400 000000F7 E8 [00000000] CALL _sheet_setbuf
401 000000FC 83 C4 2C ADD ESP,44
402 000000FF 6A 00 PUSH 0
403 00000101 68 [00000118] PUSH LC0
404 00000106 68 000000A5 PUSH 165
405 0000010B 68 00000100 PUSH 256
406 00000110 FF 35 [00000564] PUSH DWORD [_buf_cons]
407 00000116 E8 [00000000] CALL _make_window8
408 0000011B 6A 00 PUSH 0
409 0000011D 68 00000080 PUSH 128
410 00000122 68 000000F0 PUSH 240
411 00000127 6A 1C PUSH 28
412 00000129 6A 08 PUSH 8
413 0000012B FF 35 [00000574] PUSH DWORD [_sht_cons]
414 00000131 E8 [00000000] CALL _make_textbox8
415 00000136 83 C4 2C ADD ESP,44
416 00000139 E8 [00000000] CALL _task_alloc
417 0000013E 68 00010000 PUSH 65536
418 00000143 89 C3 MOV EBX,EAX
419 00000145 FF 35 [00000004] PUSH DWORD [_memman]
420 0000014B A3 [0000057C] MOV DWORD [_task_cons],EAX
421 00000150 E8 [00000000] CALL _memman_alloc_4k
422 00000155 05 0000FFF4 ADD EAX,65524
423 0000015A 89 43 64 MOV DWORD [100+EBX],EAX
424 0000015D 8B 1D [00000574] MOV EBX,DWORD [_sht_cons]
425 00000163 A1 [0000057C] MOV EAX,DWORD [_task_cons]
426 00000168 8B 48 64 MOV ECX,DWORD [100+EAX]
427 0000016B C7 40 4C [00000000] MOV DWORD [76+EAX],_console_task
428 00000172 C7 40 74 00000008 MOV DWORD [116+EAX],8
429 00000179 C7 40 78 00000010 MOV DWORD [120+EAX],16
430 00000180 C7 40 7C 00000008 MOV DWORD [124+EAX],8
431 00000187 C7 80 00000080 00000008 MOV DWORD [128+EAX],8
432 00000191 C7 80 00000084 00000008 MOV DWORD [132+EAX],8
433 0000019B C7 80 00000088 00000008 MOV DWORD [136+EAX],8
434 000001A5 89 59 04 MOV DWORD [4+ECX],EBX
435 000001A8 BB 00000002 MOV EBX,2
436 000001AD 8B 48 64 MOV ECX,DWORD [100+EAX]
437 000001B0 8B 15 [00000434] MOV EDX,DWORD [_memtotal]
438 000001B6 89 51 08 MOV DWORD [8+ECX],EDX
439 000001B9 6A 02 PUSH 2
440 000001BB 6A 02 PUSH 2
441 000001BD 50 PUSH EAX
442 000001BE E8 [00000000] CALL _task_run
443 000001C3 FF 35 [0000012C] PUSH DWORD [_shtctl]
444 000001C9 E8 [00000000] CALL _sheet_alloc
445 000001CE 68 00002080 PUSH 8320
446 000001D3 FF 35 [00000004] PUSH DWORD [_memman]
447 000001D9 A3 [00000570] MOV DWORD [_sht_win],EAX
448 000001DE E8 [00000000] CALL _memman_alloc_4k
449 000001E3 83 C4 20 ADD ESP,32
450 000001E6 A3 [00000560] MOV DWORD [_buf_win],EAX
451 000001EB 6A FF PUSH -1
452 000001ED 6A 34 PUSH 52
453 000001EF 68 00000090 PUSH 144
454 000001F4 50 PUSH EAX
455 000001F5 FF 35 [00000570] PUSH DWORD [_sht_win]
456 000001FB E8 [00000000] CALL _sheet_setbuf
457 00000200 6A 01 PUSH 1
458 00000202 68 [00000120] PUSH LC1
459 00000207 6A 34 PUSH 52
460 00000209 68 00000090 PUSH 144
461 0000020E FF 35 [00000560] PUSH DWORD [_buf_win]
462 00000214 E8 [00000000] CALL _make_window8
463 00000219 83 C4 28 ADD ESP,40
464 0000021C 6A 07 PUSH 7
465 0000021E 6A 10 PUSH 16
466 00000220 68 00000080 PUSH 128
467 00000225 6A 1C PUSH 28
468 00000227 6A 08 PUSH 8
469 00000229 FF 35 [00000570] PUSH DWORD [_sht_win]
470 0000022F E8 [00000000] CALL _make_textbox8
471 00000234 C7 05 [0000042C] 00000008 MOV DWORD [_cursor_x],8
472 0000023E C7 05 [00000430] 00000007 MOV DWORD [_cursor_c],7
473 00000248 E8 [00000000] CALL _timer_alloc
474 0000024D 6A 01 PUSH 1
475 0000024F 68 [00000160] PUSH _fifo
476 00000254 A3 [00000580] MOV DWORD [_timer],EAX
477 00000259 50 PUSH EAX
478 0000025A E8 [00000000] CALL _timer_init
479 0000025F 83 C4 24 ADD ESP,36
480 00000262 6A 32 PUSH 50
481 00000264 FF 35 [00000580] PUSH DWORD [_timer]
482 0000026A E8 [00000000] CALL _timer_settime
483 0000026F FF 35 [0000012C] PUSH DWORD [_shtctl]
484 00000275 E8 [00000000] CALL _sheet_alloc
485 0000027A 6A 63 PUSH 99
486 0000027C 6A 10 PUSH 16
487 0000027E A3 [0000056C] MOV DWORD [_sht_mouse],EAX
488 00000283 6A 10 PUSH 16
489 00000285 68 [00000460] PUSH _buf_mouse
490 0000028A 50 PUSH EAX
491 0000028B E8 [00000000] CALL _sheet_setbuf
492 00000290 83 C4 20 ADD ESP,32
493 00000293 6A 63 PUSH 99
494 00000295 68 [00000460] PUSH _buf_mouse
495 0000029A E8 [00000000] CALL _init_mouse_cursor8
496 0000029F 8B 0D [00000000] MOV ECX,DWORD [_binfo]
497 000002A5 0F BF 41 04 MOVSX EAX,WORD [4+ECX]
498 000002A9 83 E8 10 SUB EAX,16
499 000002AC 99 CDQ
500 000002AD F7 FB IDIV EBX
501 000002AF A3 [00000420] MOV DWORD [_mx],EAX
502 000002B4 0F BF 41 06 MOVSX EAX,WORD [6+ECX]
503 000002B8 83 E8 2C SUB EAX,44
504 000002BB 6A 00 PUSH 0
505 000002BD 99 CDQ
506 000002BE F7 FB IDIV EBX
507 000002C0 6A 00 PUSH 0
508 000002C2 A3 [00000424] MOV DWORD [_my],EAX
509 000002C7 FF 35 [00000568] PUSH DWORD [_sht_back]
510 000002CD E8 [00000000] CALL _sheet_slide
511 000002D2 6A 04 PUSH 4
512 000002D4 6A 20 PUSH 32
513 000002D6 FF 35 [00000574] PUSH DWORD [_sht_cons]
514 000002DC E8 [00000000] CALL _sheet_slide
515 000002E1 83 C4 20 ADD ESP,32
516 000002E4 6A 38 PUSH 56
517 000002E6 6A 40 PUSH 64
518 000002E8 FF 35 [00000570] PUSH DWORD [_sht_win]
519 000002EE E8 [00000000] CALL _sheet_slide
520 000002F3 FF 35 [00000424] PUSH DWORD [_my]
521 000002F9 FF 35 [00000420] PUSH DWORD [_mx]
522 000002FF FF 35 [0000056C] PUSH DWORD [_sht_mouse]
523 00000305 E8 [00000000] CALL _sheet_slide
524 0000030A 6A 00 PUSH 0
525 0000030C FF 35 [00000568] PUSH DWORD [_sht_back]
526 00000312 E8 [00000000] CALL _sheet_updown
527 00000317 83 C4 20 ADD ESP,32
528 0000031A 6A 01 PUSH 1
529 0000031C FF 35 [00000574] PUSH DWORD [_sht_cons]
530 00000322 E8 [00000000] CALL _sheet_updown
531 00000327 6A 02 PUSH 2
532 00000329 FF 35 [00000570] PUSH DWORD [_sht_win]
533 0000032F E8 [00000000] CALL _sheet_updown
534 00000334 6A 03 PUSH 3
535 00000336 FF 35 [0000056C] PUSH DWORD [_sht_mouse]
536 0000033C E8 [00000000] CALL _sheet_updown
537 00000341 8B 5D FC MOV EBX,DWORD [-4+EBP]
538 00000344 C9 LEAVE
539 00000345 C3 RET
540 00000346 GLOBAL _initMemory
541 00000346 _initMemory:
542 00000346 55 PUSH EBP
543 00000347 89 E5 MOV EBP,ESP
544 00000349 68 BFFFFFFF PUSH -1073741825
545 0000034E 68 00400000 PUSH 4194304
546 00000353 E8 [00000000] CALL _memtest
547 00000358 FF 35 [00000004] PUSH DWORD [_memman]
548 0000035E A3 [00000434] MOV DWORD [_memtotal],EAX
549 00000363 E8 [00000000] CALL _memman_init
550 00000368 68 0009E000 PUSH 647168
551 0000036D 68 00001000 PUSH 4096
552 00000372 FF 35 [00000004] PUSH DWORD [_memman]
553 00000378 E8 [00000000] CALL _memman_free
554 0000037D A1 [00000434] MOV EAX,DWORD [_memtotal]
555 00000382 2D 00400000 SUB EAX,4194304
556 00000387 50 PUSH EAX
557 00000388 68 00400000 PUSH 4194304
558 0000038D FF 35 [00000004] PUSH DWORD [_memman]
559 00000393 E8 [00000000] CALL _memman_free
560 00000398 C9 LEAVE
561 00000399 C3 RET
562 0000039A GLOBAL _initDevice
563 0000039A _initDevice:
564 0000039A 55 PUSH EBP
565 0000039B 89 E5 MOV EBP,ESP
566 0000039D E8 [00000000] CALL _init_gdtidt
567 000003A2 E8 [00000000] CALL _init_pic
568 000003A7 E8 [00000000] CALL _io_sti
569 000003AC 6A 00 PUSH 0
570 000003AE 68 [000001A0] PUSH _fifobuf
571 000003B3 68 00000080 PUSH 128
572 000003B8 68 [00000160] PUSH _fifo
573 000003BD E8 [00000000] CALL _fifo32_init
574 000003C2 E8 [00000000] CALL _init_pit
575 000003C7 68 00000100 PUSH 256
576 000003CC 68 [00000160] PUSH _fifo
577 000003D1 E8 [00000000] CALL _init_keyboard
578 000003D6 68 [00000440] PUSH _mdec
579 000003DB 68 00000200 PUSH 512
580 000003E0 68 [00000160] PUSH _fifo
581 000003E5 E8 [00000000] CALL _enable_mouse
582 000003EA 83 C4 24 ADD ESP,36
583 000003ED 68 000000F8 PUSH 248
584 000003F2 6A 21 PUSH 33
585 000003F4 E8 [00000000] CALL _io_out8
586 000003F9 68 000000EF PUSH 239
587 000003FE 68 000000A1 PUSH 161
588 00000403 E8 [00000000] CALL _io_out8
589 00000408 6A 00 PUSH 0
590 0000040A 68 [000003A0] PUSH _keycmd_buf
591 0000040F 6A 20 PUSH 32
592 00000411 68 [00000180] PUSH _keycmd
593 00000416 E8 [00000000] CALL _fifo32_init
594 0000041B C9 LEAVE
595 0000041C C3 RET
596 [SECTION .data]
597 00000127 LC2:
598 00000127 20 00 DB " ",0x00
599 [SECTION .text]
600 0000041D GLOBAL _HariMain
601 0000041D _HariMain:
602 0000041D A1 [00000000] MOV EAX,DWORD [_binfo]
603 00000422 55 PUSH EBP
604 00000423 89 E5 MOV EBP,ESP
605 00000425 8A 40 01 MOV AL,BYTE [1+EAX]
606 00000428 C0 F8 04 SAR AL,4
607 0000042B 83 E0 07 AND EAX,7
608 0000042E A3 [00000010] MOV DWORD [_key_leds],EAX
609 00000433 E8 FFFFFF62 CALL _initDevice
610 00000438 E8 FFFFFF09 CALL _initMemory
611 0000043D E8 FFFFFBBE CALL _initGUI
612 00000442 68 000000ED PUSH 237
613 00000447 68 [00000180] PUSH _keycmd
614 0000044C E8 [00000000] CALL _fifo32_put
615 00000451 FF 35 [00000010] PUSH DWORD [_key_leds]
616 00000457 68 [00000180] PUSH _keycmd
617 0000045C E8 [00000000] CALL _fifo32_put
618 00000461 83 C4 10 ADD ESP,16
619 00000464 L5:
620 00000464 68 [00000180] PUSH _keycmd
621 00000469 E8 [00000000] CALL _fifo32_status
622 0000046E 59 POP ECX
623 0000046F 85 C0 TEST EAX,EAX
624 00000471 7E 0D JLE L8
625 00000473 83 3D [00000014] 00 CMP DWORD [_keycmd_wait],0
626 0000047A 0F 88 00000665 JS L60
627 00000480 L8:
628 00000480 E8 [00000000] CALL _io_cli
629 00000485 68 [00000160] PUSH _fifo
630 0000048A E8 [00000000] CALL _fifo32_status
631 0000048F 5A POP EDX
632 00000490 85 C0 TEST EAX,EAX
633 00000492 0F 84 00000637 JE L61
634 00000498 68 [00000160] PUSH _fifo
635 0000049D E8 [00000000] CALL _fifo32_get
636 000004A2 A3 [00000428] MOV DWORD [_i],EAX
637 000004A7 E8 [00000000] CALL _io_sti
638 000004AC 8B 15 [00000428] MOV EDX,DWORD [_i]
639 000004B2 59 POP ECX
640 000004B3 8D 82 FFFFFF00 LEA EAX,DWORD [-256+EDX]
641 000004B9 3D 000000FF CMP EAX,255
642 000004BE 0F 86 000001B9 JBE L62
643 000004C4 8D 82 FFFFFE00 LEA EAX,DWORD [-512+EDX]
644 000004CA 3D 000000FF CMP EAX,255
645 000004CF 0F 86 000000CA JBE L63
646 000004D5 83 FA 01 CMP EDX,1
647 000004D8 7F 8A JG L5
648 000004DA 85 D2 TEST EDX,EDX
649 000004DC 0F 84 0000008C JE L53
650 000004E2 6A 00 PUSH 0
651 000004E4 68 [00000160] PUSH _fifo
652 000004E9 FF 35 [00000580] PUSH DWORD [_timer]
653 000004EF E8 [00000000] CALL _timer_init
654 000004F4 83 C4 0C ADD ESP,12
655 000004F7 83 3D [00000430] 00 CMP DWORD [_cursor_c],0
656 000004FE 78 0A JS L55
657 00000500 C7 05 [00000430] 00000000 MOV DWORD [_cursor_c],0
658 0000050A L55:
659 0000050A 6A 32 PUSH 50
660 0000050C FF 35 [00000580] PUSH DWORD [_timer]
661 00000512 E8 [00000000] CALL _timer_settime
662 00000517 58 POP EAX
663 00000518 5A POP EDX
664 00000519 83 3D [00000430] 00 CMP DWORD [_cursor_c],0
665 00000520 0F 88 FFFFFF3E JS L5
666 00000526 8B 15 [0000042C] MOV EDX,DWORD [_cursor_x]
667 0000052C 6A 2B PUSH 43
668 0000052E 8D 42 07 LEA EAX,DWORD [7+EDX]
669 00000531 50 PUSH EAX
670 00000532 6A 1C PUSH 28
671 00000534 52 PUSH EDX
672 00000535 0F B6 05 [00000430] MOVZX EAX,BYTE [_cursor_c]
673 0000053C 50 PUSH EAX
674 0000053D A1 [00000570] MOV EAX,DWORD [_sht_win]
675 00000542 FF 70 04 PUSH DWORD [4+EAX]
676 00000545 FF 30 PUSH DWORD [EAX]
677 00000547 E8 [00000000] CALL _boxfill8
678 0000054C 8B 15 [0000042C] MOV EDX,DWORD [_cursor_x]
679 00000552 6A 2C PUSH 44
680 00000554 8D 42 08 LEA EAX,DWORD [8+EDX]
681 00000557 50 PUSH EAX
682 00000558 6A 1C PUSH 28
683 0000055A 52 PUSH EDX
684 0000055B FF 35 [00000570] PUSH DWORD [_sht_win]
685 00000561 E8 [00000000] CALL _sheet_refresh
686 00000566 83 C4 30 ADD ESP,48
687 00000569 E9 FFFFFEF6 JMP L5
688 0000056E L53:
689 0000056E 6A 01 PUSH 1
690 00000570 68 [00000160] PUSH _fifo
691 00000575 FF 35 [00000580] PUSH DWORD [_timer]
692 0000057B E8 [00000000] CALL _timer_init
693 00000580 83 C4 0C ADD ESP,12
694 00000583 83 3D [00000430] 00 CMP DWORD [_cursor_c],0
695 0000058A 0F 88 FFFFFF7A JS L55
696 00000590 C7 05 [00000430] 00000007 MOV DWORD [_cursor_c],7
697 0000059A E9 FFFFFF6B JMP L55
698 0000059F L63:
699 0000059F 0F B6 05 [00000428] MOVZX EAX,BYTE [_i]
700 000005A6 50 PUSH EAX
701 000005A7 68 [00000440] PUSH _mdec
702 000005AC E8 [00000000] CALL _mouse_decode
703 000005B1 59 POP ECX
704 000005B2 5A POP EDX
705 000005B3 85 C0 TEST EAX,EAX
706 000005B5 0F 84 FFFFFEA9 JE L5
707 000005BB A1 [00000444] MOV EAX,DWORD [_mdec+4]
708 000005C0 8B 15 [00000448] MOV EDX,DWORD [_mdec+8]
709 000005C6 03 05 [00000420] ADD EAX,DWORD [_mx]
710 000005CC 03 15 [00000424] ADD EDX,DWORD [_my]
711 000005D2 A3 [00000420] MOV DWORD [_mx],EAX
712 000005D7 85 C0 TEST EAX,EAX
713 000005D9 89 15 [00000424] MOV DWORD [_my],EDX
714 000005DF 0F 88 00000089 JS L64
715 000005E5 L46:
716 000005E5 85 D2 TEST EDX,EDX
717 000005E7 78 76 JS L65
718 000005E9 L47:
719 000005E9 8B 15 [00000000] MOV EDX,DWORD [_binfo]
720 000005EF 0F BF 42 04 MOVSX EAX,WORD [4+EDX]
721 000005F3 48 DEC EAX
722 000005F4 39 05 [00000420] CMP DWORD [_mx],EAX
723 000005FA 7E 05 JLE L48
724 000005FC A3 [00000420] MOV DWORD [_mx],EAX
725 00000601 L48:
726 00000601 0F BF 42 06 MOVSX EAX,WORD [6+EDX]
727 00000605 48 DEC EAX
728 00000606 39 05 [00000424] CMP DWORD [_my],EAX
729 0000060C 7E 05 JLE L49
730 0000060E A3 [00000424] MOV DWORD [_my],EAX
731 00000613 L49:
732 00000613 FF 35 [00000424] PUSH DWORD [_my]
733 00000619 FF 35 [00000420] PUSH DWORD [_mx]
734 0000061F FF 35 [0000056C] PUSH DWORD [_sht_mouse]
735 00000625 E8 [00000000] CALL _sheet_slide
736 0000062A 83 C4 0C ADD ESP,12
737 0000062D F6 05 [0000044C] 01 TEST BYTE [_mdec+12],1
738 00000634 0F 84 FFFFFE2A JE L5
739 0000063A A1 [00000424] MOV EAX,DWORD [_my]
740 0000063F 83 E8 08 SUB EAX,8
741 00000642 50 PUSH EAX
742 00000643 A1 [00000420] MOV EAX,DWORD [_mx]
743 00000648 83 E8 50 SUB EAX,80
744 0000064B 50 PUSH EAX
745 0000064C FF 35 [00000570] PUSH DWORD [_sht_win]
746 00000652 E8 [00000000] CALL _sheet_slide
747 00000657 83 C4 0C ADD ESP,12
748 0000065A E9 FFFFFE05 JMP L5
749 0000065F L65:
750 0000065F C7 05 [00000424] 00000000 MOV DWORD [_my],0
751 00000669 E9 FFFFFF7B JMP L47
752 0000066E L64:
753 0000066E C7 05 [00000420] 00000000 MOV DWORD [_mx],0
754 00000678 E9 FFFFFF68 JMP L46
755 0000067D L62:
756 0000067D 81 FA 0000017F CMP EDX,383
757 00000683 0F 8F 0000043A JG L12
758 00000689 83 3D [0000000C] 00 CMP DWORD [_key_shift],0
759 00000690 0F 85 00000422 JNE L13
760 00000696 8A 82 [FFFFFF18] MOV AL,BYTE [_keytable0-256+EDX]
761 0000069C L59:
762 0000069C A2 [00000130] MOV BYTE [_s],AL
763 000006A1 L15:
764 000006A1 8A 15 [00000130] MOV DL,BYTE [_s]
765 000006A7 8D 42 BF LEA EAX,DWORD [-65+EDX]
766 000006AA 3C 19 CMP AL,25
767 000006AC 77 1A JA L16
768 000006AE F6 05 [00000010] 04 TEST BYTE [_key_leds],4
769 000006B5 0F 85 000003EE JNE L58
770 000006BB 83 3D [0000000C] 00 CMP DWORD [_key_shift],0
771 000006C2 0F 84 000003D4 JE L18
772 000006C8 L16:
773 000006C8 A0 [00000130] MOV AL,BYTE [_s]
774 000006CD 84 C0 TEST AL,AL
775 000006CF 74 41 JE L20
776 000006D1 83 3D [00000008] 00 CMP DWORD [_key_to],0
777 000006D8 0F 85 000003A0 JNE L21
778 000006DE A1 [0000042C] MOV EAX,DWORD [_cursor_x]
779 000006E3 83 F8 7F CMP EAX,127
780 000006E6 7F 2A JG L20
781 000006E8 6A 01 PUSH 1
782 000006EA 68 [00000130] PUSH _s
783 000006EF 6A 07 PUSH 7
784 000006F1 6A 00 PUSH 0
785 000006F3 6A 1C PUSH 28
786 000006F5 50 PUSH EAX
787 000006F6 FF 35 [00000570] PUSH DWORD [_sht_win]
788 000006FC C6 05 [00000131] 00 MOV BYTE [_s+1],0
789 00000703 E8 [00000000] CALL _putfonts8_asc_sht
790 00000708 83 C4 1C ADD ESP,28
791 0000070B 83 05 [0000042C] 08 ADD DWORD [_cursor_x],8
792 00000712 L20:
793 00000712 81 3D [00000428] 0000010E CMP DWORD [_i],270
794 0000071C 0F 84 00000303 JE L66
795 00000722 L24:
796 00000722 81 3D [00000428] 0000011C CMP DWORD [_i],284
797 0000072C 0F 84 000002CC JE L67
798 00000732 L28:
799 00000732 81 3D [00000428] 0000010F CMP DWORD [_i],271
800 0000073C 0F 84 0000019F JE L68
801 00000742 L30:
802 00000742 A1 [00000428] MOV EAX,DWORD [_i]
803 00000747 3D 0000012A CMP EAX,298
804 0000074C 0F 84 00000183 JE L69
805 00000752 L33:
806 00000752 3D 00000136 CMP EAX,310
807 00000757 0F 84 0000016C JE L70
808 0000075D L34:
809 0000075D 3D 000001AA CMP EAX,426
810 00000762 0F 84 00000155 JE L71
811 00000768 L35:
812 00000768 3D 000001B6 CMP EAX,438
813 0000076D 0F 84 0000013E JE L72
814 00000773 L36:
815 00000773 3D 0000013A CMP EAX,314
816 00000778 0F 84 00000105 JE L73
817 0000077E L37:
818 0000077E 81 3D [00000428] 00000145 CMP DWORD [_i],325
819 00000788 0F 84 000000C7 JE L74
820 0000078E L38:
821 0000078E 81 3D [00000428] 00000146 CMP DWORD [_i],326
822 00000798 0F 84 00000089 JE L75
823 0000079E L39:
824 0000079E A1 [00000428] MOV EAX,DWORD [_i]
825 000007A3 3D 000001FA CMP EAX,506
826 000007A8 74 71 JE L76
827 000007AA L40:
828 000007AA 3D 000001FE CMP EAX,510
829 000007AF 74 54 JE L77
830 000007B1 L41:
831 000007B1 83 3D [00000430] 00 CMP DWORD [_cursor_c],0
832 000007B8 78 29 JS L42
833 000007BA 8B 15 [0000042C] MOV EDX,DWORD [_cursor_x]
834 000007C0 6A 2B PUSH 43
835 000007C2 8D 42 07 LEA EAX,DWORD [7+EDX]
836 000007C5 50 PUSH EAX
837 000007C6 6A 1C PUSH 28
838 000007C8 52 PUSH EDX
839 000007C9 0F B6 05 [00000430] MOVZX EAX,BYTE [_cursor_c]
840 000007D0 50 PUSH EAX
841 000007D1 A1 [00000570] MOV EAX,DWORD [_sht_win]
842 000007D6 FF 70 04 PUSH DWORD [4+EAX]
843 000007D9 FF 30 PUSH DWORD [EAX]
844 000007DB E8 [00000000] CALL _boxfill8
845 000007E0 83 C4 1C ADD ESP,28
846 000007E3 L42:
847 000007E3 8B 15 [0000042C] MOV EDX,DWORD [_cursor_x]
848 000007E9 6A 2C PUSH 44
849 000007EB 8D 42 08 LEA EAX,DWORD [8+EDX]
850 000007EE 50 PUSH EAX
851 000007EF 6A 1C PUSH 28
852 000007F1 52 PUSH EDX
853 000007F2 FF 35 [00000570] PUSH DWORD [_sht_win]
854 000007F8 E8 [00000000] CALL _sheet_refresh
855 000007FD 83 C4 14 ADD ESP,20
856 00000800 E9 FFFFFC5F JMP L5
857 00000805 L77:
858 00000805 E8 [00000000] CALL _wait_KBC_sendready
859 0000080A FF 35 [00000014] PUSH DWORD [_keycmd_wait]
860 00000810 6A 60 PUSH 96
861 00000812 E8 [00000000] CALL _io_out8
862 00000817 59 POP ECX
863 00000818 58 POP EAX
864 00000819 EB 96 JMP L41
865 0000081B L76:
866 0000081B C7 05 [00000014] FFFFFFFF MOV DWORD [_keycmd_wait],-1
867 00000825 EB 83 JMP L40
868 00000827 L75:
869 00000827 68 000000ED PUSH 237
870 0000082C 68 [00000180] PUSH _keycmd
871 00000831 83 35 [00000010] 01 XOR DWORD [_key_leds],1
872 00000838 E8 [00000000] CALL _fifo32_put
873 0000083D FF 35 [00000010] PUSH DWORD [_key_leds]
874 00000843 68 [00000180] PUSH _keycmd
875 00000848 E8 [00000000] CALL _fifo32_put
876 0000084D 83 C4 10 ADD ESP,16
877 00000850 E9 FFFFFF49 JMP L39
878 00000855 L74:
879 00000855 68 000000ED PUSH 237
880 0000085A 68 [00000180] PUSH _keycmd
881 0000085F 83 35 [00000010] 02 XOR DWORD [_key_leds],2
882 00000866 E8 [00000000] CALL _fifo32_put
883 0000086B FF 35 [00000010] PUSH DWORD [_key_leds]
884 00000871 68 [00000180] PUSH _keycmd
885 00000876 E8 [00000000] CALL _fifo32_put
886 0000087B 83 C4 10 ADD ESP,16
887 0000087E E9 FFFFFF0B JMP L38
888 00000883 L73:
889 00000883 68 000000ED PUSH 237
890 00000888 68 [00000180] PUSH _keycmd
891 0000088D 83 35 [00000010] 04 XOR DWORD [_key_leds],4
892 00000894 E8 [00000000] CALL _fifo32_put
893 00000899 FF 35 [00000010] PUSH DWORD [_key_leds]
894 0000089F 68 [00000180] PUSH _keycmd
895 000008A4 E8 [00000000] CALL _fifo32_put
896 000008A9 83 C4 10 ADD ESP,16
897 000008AC E9 FFFFFECD JMP L37
898 000008B1 L72:
899 000008B1 83 25 [0000000C] FD AND DWORD [_key_shift],-3
900 000008B8 E9 FFFFFEB6 JMP L36
901 000008BD L71:
902 000008BD 83 25 [0000000C] FE AND DWORD [_key_shift],-2
903 000008C4 E9 FFFFFE9F JMP L35
904 000008C9 L70:
905 000008C9 83 0D [0000000C] 02 OR DWORD [_key_shift],2
906 000008D0 E9 FFFFFE88 JMP L34
907 000008D5 L69:
908 000008D5 83 0D [0000000C] 01 OR DWORD [_key_shift],1
909 000008DC E9 FFFFFE71 JMP L33
910 000008E1 L68:
911 000008E1 83 3D [00000008] 00 CMP DWORD [_key_to],0
912 000008E8 0F 85 000000AE JNE L31
913 000008EE 6A 00 PUSH 0
914 000008F0 A1 [00000570] MOV EAX,DWORD [_sht_win]
915 000008F5 68 [00000120] PUSH LC1
916 000008FA FF 70 04 PUSH DWORD [4+EAX]
917 000008FD FF 35 [00000560] PUSH DWORD [_buf_win]
918 00000903 C7 05 [00000008] 00000001 MOV DWORD [_key_to],1
919 0000090D E8 [00000000] CALL _make_wtitle8
920 00000912 A1 [00000574] MOV EAX,DWORD [_sht_cons]
921 00000917 6A 01 PUSH 1
922 00000919 68 [00000118] PUSH LC0
923 0000091E FF 70 04 PUSH DWORD [4+EAX]
924 00000921 FF 35 [00000564] PUSH DWORD [_buf_cons]
925 00000927 E8 [00000000] CALL _make_wtitle8
926 0000092C 8B 15 [0000042C] MOV EDX,DWORD [_cursor_x]
927 00000932 83 C4 20 ADD ESP,32
928 00000935 8D 42 07 LEA EAX,DWORD [7+EDX]
929 00000938 6A 2B PUSH 43
930 0000093A 50 PUSH EAX
931 0000093B A1 [00000570] MOV EAX,DWORD [_sht_win]
932 00000940 6A 1C PUSH 28
933 00000942 52 PUSH EDX
934 00000943 6A 07 PUSH 7
935 00000945 FF 70 04 PUSH DWORD [4+EAX]
936 00000948 FF 30 PUSH DWORD [EAX]
937 0000094A C7 05 [00000430] FFFFFFFF MOV DWORD [_cursor_c],-1
938 00000954 E8 [00000000] CALL _boxfill8
939 00000959 A1 [0000057C] MOV EAX,DWORD [_task_cons]
940 0000095E 6A 02 PUSH 2
941 00000960 83 C0 10 ADD EAX,16
942 00000963 50 PUSH EAX
943 00000964 E8 [00000000] CALL _fifo32_put
944 00000969 83 C4 24 ADD ESP,36
945 0000096C L32:
946 0000096C A1 [00000570] MOV EAX,DWORD [_sht_win]
947 00000971 6A 15 PUSH 21
948 00000973 FF 70 04 PUSH DWORD [4+EAX]
949 00000976 6A 00 PUSH 0
950 00000978 6A 00 PUSH 0
951 0000097A 50 PUSH EAX
952 0000097B E8 [00000000] CALL _sheet_refresh
953 00000980 A1 [00000574] MOV EAX,DWORD [_sht_cons]
954 00000985 6A 15 PUSH 21
955 00000987 FF 70 04 PUSH DWORD [4+EAX]
956 0000098A 6A 00 PUSH 0
957 0000098C 6A 00 PUSH 0
958 0000098E 50 PUSH EAX
959 0000098F E8 [00000000] CALL _sheet_refresh
960 00000994 83 C4 28 ADD ESP,40
961 00000997 E9 FFFFFDA6 JMP L30
962 0000099C L31:
963 0000099C 6A 01 PUSH 1
964 0000099E A1 [00000570] MOV EAX,DWORD [_sht_win]
965 000009A3 68 [00000120] PUSH LC1
966 000009A8 FF 70 04 PUSH DWORD [4+EAX]
967 000009AB FF 35 [00000560] PUSH DWORD [_buf_win]
968 000009B1 C7 05 [00000008] 00000000 MOV DWORD [_key_to],0
969 000009BB E8 [00000000] CALL _make_wtitle8
970 000009C0 A1 [00000574] MOV EAX,DWORD [_sht_cons]
971 000009C5 6A 00 PUSH 0
972 000009C7 68 [00000118] PUSH LC0
973 000009CC FF 70 04 PUSH DWORD [4+EAX]
974 000009CF FF 35 [00000564] PUSH DWORD [_buf_cons]
975 000009D5 E8 [00000000] CALL _make_wtitle8
976 000009DA A1 [0000057C] MOV EAX,DWORD [_task_cons]
977 000009DF 83 C4 20 ADD ESP,32
978 000009E2 83 C0 10 ADD EAX,16
979 000009E5 C7 05 [00000430] 00000000 MOV DWORD [_cursor_c],0
980 000009EF 6A 03 PUSH 3
981 000009F1 50 PUSH EAX
982 000009F2 E8 [00000000] CALL _fifo32_put
983 000009F7 58 POP EAX
984 000009F8 5A POP EDX
985 000009F9 E9 FFFFFF6E JMP L32
986 000009FE L67:
987 000009FE 83 3D [00000008] 00 CMP DWORD [_key_to],0
988 00000A05 0F 84 FFFFFD27 JE L28
989 00000A0B A1 [0000057C] MOV EAX,DWORD [_task_cons]
990 00000A10 68 0000010A PUSH 266
991 00000A15 83 C0 10 ADD EAX,16
992 00000A18 50 PUSH EAX
993 00000A19 E8 [00000000] CALL _fifo32_put
994 00000A1E 59 POP ECX
995 00000A1F 58 POP EAX
996 00000A20 E9 FFFFFD0D JMP L28
997 00000A25 L66:
998 00000A25 83 3D [00000008] 00 CMP DWORD [_key_to],0
999 00000A2C 75 36 JNE L25
1000 00000A2E A1 [0000042C] MOV EAX,DWORD [_cursor_x]