Subversion Repositories Kolibri OS

Rev

Rev 8236 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 8236 Rev 8283
Line 68... Line 68...
68
  mov  byte [address],0xB8
68
  mov  byte [address],0xB8
69
  mov  dword [address+4],0xC089C300
69
  mov  dword [address+4],0xC089C300
70
  mov  dword [address+1],val
70
  mov  dword [address+1],val
71
}
71
}
Line -... Line 72...
-
 
72
 
72
 
73
align 4
73
proc @Kolibri@Main$qv
74
proc @Kolibri@Main$qv
74
  and  esp,not 3
75
  and  esp,not 3
75
  sub  esp,1024
76
  sub  esp,1024
76
  mov  eax,SF_THREAD_INFO
77
  mov  eax,SF_THREAD_INFO
Line 116... Line 117...
116
.ThreadFinish_end:
117
.ThreadFinish_end:
117
  or   eax,-1
118
  or   eax,-1
118
  int  0x40
119
  int  0x40
119
endp
120
endp
Line -... Line 121...
-
 
121
 
120
 
122
align 4
121
proc @Kolibri@ThreadMain$qpvt1
123
proc @Kolibri@ThreadMain$qpvt1
122
  xchg ebx,[esp+4]
124
  xchg ebx,[esp+4]
123
  xchg ebp,[esp+8]
125
  xchg ebp,[esp+8]
124
  push esi edi
126
  push esi edi
Line 327... Line 329...
327
  xchg ebp,[esp+8]
329
  xchg ebp,[esp+8]
328
  xchg ebx,[esp+4]
330
  xchg ebx,[esp+4]
329
  ret
331
  ret
330
endp
332
endp
Line -... Line 333...
-
 
333
 
331
 
334
align 4
332
proc @Kolibri@Redraw$qippv
335
proc @Kolibri@Redraw$qippv
333
  push ebp
336
  push ebp
334
  mov  ebp,[esp+12]
337
  mov  ebp,[esp+12]
335
  mov  edx,[ebp+KOLIBRI_THREAD_DATA_FLAG*4]
338
  mov  edx,[ebp+KOLIBRI_THREAD_DATA_FLAG*4]
Line 377... Line 380...
377
  int  0x40
380
  int  0x40
378
  pop  edi esi ebx ebp
381
  pop  edi esi ebx ebp
379
  ret
382
  ret
380
endp
383
endp
Line -... Line 384...
-
 
384
 
381
 
385
align 4
382
proc @Kolibri@MoveWindow$qxpxi uses ebx esi
386
proc @Kolibri@MoveWindow$qxpxi uses ebx esi
383
  mov  eax,[esp+12]
387
  mov  eax,[esp+12]
384
  mov  ebx,[eax]
388
  mov  ebx,[eax]
385
  mov  ecx,[eax+4]
389
  mov  ecx,[eax+4]
Line 388... Line 392...
388
  mov  eax,SF_CHANGE_WINDOW
392
  mov  eax,SF_CHANGE_WINDOW
389
  int  0x40
393
  int  0x40
390
  ret
394
  ret
391
endp
395
endp
Line -... Line 396...
-
 
396
 
392
 
397
align 4
393
proc @Kolibri@ExitDebug$qv
398
proc @Kolibri@ExitDebug$qv
394
  push dword [@Kolibri@DebugPrefix]
399
  push dword [@Kolibri@DebugPrefix]
395
  call @Kolibri@DebugPutString$qpxc
400
  call @Kolibri@DebugPutString$qpxc
396
  mov	dword [esp],Kolibri_debug_string
401
  mov	dword [esp],Kolibri_debug_string
397
  call @Kolibri@DebugPutString$qpxc
402
  call @Kolibri@DebugPutString$qpxc
398
  pop	ecx
403
  pop	ecx
399
  jmp  @Kolibri@ExitProcess$qv
404
  jmp  @Kolibri@ExitProcess$qv
Line -... Line 405...
-
 
405
endp
400
endp
406
 
401
 
407
align 4
402
proc @Kolibri@ExitProcess$qv
408
proc @Kolibri@ExitProcess$qv
403
  lock bts dword [@Kolibri@_ExitProcessNow],0
409
  lock bts dword [@Kolibri@_ExitProcessNow],0
404
  jc   .exit_process_wait
410
  jc   .exit_process_wait
Line 462... Line 468...
462
  jna  .exit_process_wait_loop
468
  jna  .exit_process_wait_loop
463
  mov  ebx,KOLIBRI_MUTEX_MAX_TIME_WAIT
469
  mov  ebx,KOLIBRI_MUTEX_MAX_TIME_WAIT
464
  jmp  .exit_process_wait_loop
470
  jmp  .exit_process_wait_loop
465
endp
471
endp
Line -... Line 472...
-
 
472
 
466
 
473
align 4
467
proc @Kolibri@ExitThread$qppv
474
proc @Kolibri@ExitThread$qppv
468
  mov  esp,[esp+4]
475
  mov  esp,[esp+4]
469
  jmp  @Kolibri@ThreadMain$qpvt1.main_end
476
  jmp  @Kolibri@ThreadMain$qpvt1.main_end
Line -... Line 477...
-
 
477
endp
470
endp
478
 
471
 
479
align 4
472
proc @Kolibri@ReturnMessageLoop$qppv
480
proc @Kolibri@ReturnMessageLoop$qppv
473
  mov  esp,[esp+4]
481
  mov  esp,[esp+4]
474
  bt   dword [esp+KOLIBRI_THREAD_DATA_FLAG*4],30
482
  bt   dword [esp+KOLIBRI_THREAD_DATA_FLAG*4],30
475
  jc   @Kolibri@ThreadMain$qpvt1.main_end
483
  jc   @Kolibri@ThreadMain$qpvt1.main_end
Line -... Line 484...
-
 
484
  jmp  @Kolibri@ThreadMain$qpvt1.main_cycle
476
  jmp  @Kolibri@ThreadMain$qpvt1.main_cycle
485
endp
477
endp
486
 
478
 
487
align 4
479
proc @Kolibri@Delay$qui uses ebx
488
proc @Kolibri@Delay$qui uses ebx
480
  mov  eax,SF_SLEEP
489
  mov  eax,SF_SLEEP
481
  mov  ebx,[esp+8]
490
  mov  ebx,[esp+8]
Line -... Line 491...
-
 
491
  int  0x40
482
  int  0x40
492
  ret
483
  ret
493
endp
484
endp
494
 
485
 
495
align 4
486
proc @Kolibri@Clock$qv uses ebx
496
proc @Kolibri@Clock$qv uses ebx
487
  mov  eax,SF_SYSTEM_GET
497
  mov  eax,SF_SYSTEM_GET
Line -... Line 498...
-
 
498
  mov  ebx,SSF_TIME_COUNT
488
  mov  ebx,SSF_TIME_COUNT
499
  int  0x40
489
  int  0x40
500
  ret
490
  ret
501
endp
491
endp
502
 
492
 
503
align 4
Line 500... Line 511...
500
  mov  esi,[esp+8+8]
511
  mov  esi,[esp+8+8]
501
  int  0x40
512
  int  0x40
502
  ret 
513
  ret 
503
endp
514
endp
Line -... Line 515...
-
 
515
 
504
 
516
align 4
505
proc @Kolibri@GetPackedTime$qv
517
proc @Kolibri@GetPackedTime$qv
506
  mov  eax,SF_GET_SYS_TIME
518
  mov  eax,SF_GET_SYS_TIME
507
  int  0x40
519
  int  0x40
508
  ret
520
  ret
Line -... Line 521...
-
 
521
endp
509
endp
522
 
510
 
523
align 4
511
proc @Kolibri@GetTime$qpi
524
proc @Kolibri@GetTime$qpi
512
  mov  eax,SF_GET_SYS_TIME
525
  mov  eax,SF_GET_SYS_TIME
513
  int  0x40
526
  int  0x40
Line 532... Line 545...
532
  add  cl,ah
545
  add  cl,ah
533
  mov  dword [edx],ecx
546
  mov  dword [edx],ecx
534
  ret
547
  ret
535
endp
548
endp
Line -... Line 549...
-
 
549
 
536
 
550
align 4
537
proc @Kolibri@GetPackedDate$qv
551
proc @Kolibri@GetPackedDate$qv
538
  mov  eax,SF_GET_SYS_DATE
552
  mov  eax,SF_GET_SYS_DATE
539
  int  0x40
553
  int  0x40
540
  ret
554
  ret
Line -... Line 555...
-
 
555
endp
541
endp
556
 
542
 
557
align 4
543
proc @Kolibri@GetDate$qpi
558
proc @Kolibri@GetDate$qpi
544
  mov  eax,SF_GET_SYS_DATE
559
  mov  eax,SF_GET_SYS_DATE
545
  int  0x40
560
  int  0x40
Line 564... Line 579...
564
  add  cl,ah
579
  add  cl,ah
565
  mov  dword [edx+8],ecx
580
  mov  dword [edx+8],ecx
566
  ret
581
  ret
567
endp
582
endp
Line -... Line 583...
-
 
583
 
568
 
584
align 4
569
proc @Kolibri@ReadCommonColors$qpui uses ebx
585
proc @Kolibri@ReadCommonColors$qpui uses ebx
570
  mov  eax,SF_STYLE_SETTINGS
586
  mov  eax,SF_STYLE_SETTINGS
571
  mov  ebx,SSF_GET_COLORS
587
  mov  ebx,SSF_GET_COLORS
572
  mov  ecx,[esp+8]
588
  mov  ecx,[esp+8]
573
  mov  edx,40
589
  mov  edx,40
574
  int  0x40
590
  int  0x40
575
  ret
591
  ret
Line -... Line 592...
-
 
592
endp
576
endp
593
 
577
 
594
align 4
578
proc @Kolibri@DrawText$qssipxc uses ebx
595
proc @Kolibri@DrawText$qssipxc uses ebx
579
  mov  eax,SF_DRAW_TEXT
596
  mov  eax,SF_DRAW_TEXT
580
  mov  ebx,[esp+8-2]
597
  mov  ebx,[esp+8-2]
Line 584... Line 601...
584
  mov  edx,[esp+20]
601
  mov  edx,[esp+20]
585
  int  0x40
602
  int  0x40
586
  ret
603
  ret
587
endp
604
endp
Line -... Line 605...
-
 
605
 
-
 
606
align 4
-
 
607
proc @Kolibri@DrawRect$qlllll uses ebx
-
 
608
  mov  eax,SF_DRAW_RECT
-
 
609
  mov  ebx,[esp+8-2]
-
 
610
  mov  bx,[esp+16]
-
 
611
  mov  ecx,[esp+12-2]
-
 
612
  mov  cx,[esp+20]
-
 
613
  mov  edx,[esp+24]
-
 
614
  int  0x40
-
 
615
  ret
-
 
616
endp
-
 
617
 
588
 
618
align 4
589
proc @Kolibri@PutImage$qpucllll uses ebx
619
proc @Kolibri@PutImage$qpucllll uses ebx
590
  mov  eax,SF_PUT_IMAGE
620
  mov  eax,SF_PUT_IMAGE
591
  mov  ebx,[esp+8]
621
  mov  ebx,[esp+8]
592
  mov  ecx,[esp+20-2]
622
  mov  ecx,[esp+20-2]
Line 595... Line 625...
595
  mov  dx,[esp+16]
625
  mov  dx,[esp+16]
596
  int  0x40
626
  int  0x40
597
  ret
627
  ret
598
endp
628
endp
Line -... Line 629...
-
 
629
 
599
 
630
align 4
600
proc @Kolibri@SetWindowCaption$qpxc uses ebx
631
proc @Kolibri@SetWindowCaption$qpxc uses ebx
601
  mov  eax,SF_SET_CAPTION
632
  mov  eax,SF_SET_CAPTION
602
  mov  ebx,2
633
  mov  ebx,2
603
  mov  ecx,[esp+8]
634
  mov  ecx,[esp+8]
604
  int  0x40
635
  int  0x40
605
  ret
636
  ret
Line -... Line 637...
-
 
637
endp
606
endp
638
 
607
 
639
align 4
608
proc @Kolibri@GetProcessInfo$qpuipct1t1piui uses ebx esi edi
640
proc @Kolibri@GetProcessInfo$qpuipct1t1piui uses ebx esi edi
609
  sub  esp,1024
641
  sub  esp,1024
610
  mov  eax,SF_THREAD_INFO
642
  mov  eax,SF_THREAD_INFO
Line 652... Line 684...
652
.get_proc_info_no_rect:
684
.get_proc_info_no_rect:
653
  add  esp,1024
685
  add  esp,1024
654
  ret
686
  ret
655
endp
687
endp
Line -... Line 688...
-
 
688
 
656
 
689
align 4
657
proc @Kolibri@GetPid$qv uses ebx
690
proc @Kolibri@GetPid$qv uses ebx
658
  sub  esp,1024
691
  sub  esp,1024
659
  mov  eax,SF_THREAD_INFO
692
  mov  eax,SF_THREAD_INFO
660
  mov  ebx,esp
693
  mov  ebx,esp
661
  mov  ecx,-1
694
  mov  ecx,-1
662
  int  0x40
695
  int  0x40
663
  mov  eax,[esp+30]
696
  mov  eax,[esp+process_information.PID]
664
  add  esp,1024
697
  add  esp,1024
665
  ret
698
  ret
Line -... Line 699...
-
 
699
endp
666
endp
700
 
667
 
701
align 4
668
proc @Kolibri@GetPid$qppv
702
proc @Kolibri@GetPid$qppv
669
  mov  ecx,[esp+4]
703
  mov  ecx,[esp+4]
670
  mov  eax,[ecx+KOLIBRI_THREAD_DATA_PID*4]
704
  mov  eax,[ecx+KOLIBRI_THREAD_DATA_PID*4]
Line -... Line 705...
-
 
705
  ret
671
  ret
706
endp
672
endp
707
 
673
 
708
align 4
674
proc @Kolibri@_HashByte$qui
709
proc @Kolibri@_HashByte$qui
675
@Kolibri@_HashWord$qui:
710
@Kolibri@_HashWord$qui:
Line 692... Line 727...
692
  dd   0xA82F94C5
727
  dd   0xA82F94C5
693
Kolibri_hash_int_val1:
728
Kolibri_hash_int_val1:
694
  dd   0x9193780B
729
  dd   0x9193780B
695
end if
730
end if
Line -... Line 731...
-
 
731
 
696
 
732
align 4
697
proc @Kolibri@GetThreadData$qv
733
proc @Kolibri@GetThreadData$qv
698
  call @Kolibri@GetPid$qv
734
  call @Kolibri@GetPid$qv
699
  push eax
735
  push eax
700
  call @Kolibri@GetThreadData$qui
736
  call @Kolibri@GetThreadData$qui
701
  pop  ecx
737
  pop  ecx
702
  ret
738
  ret
Line -... Line 739...
-
 
739
endp
703
endp
740
 
704
 
741
align 4
705
proc @Kolibri@GetThreadData$qui
742
proc @Kolibri@GetThreadData$qui
706
  mov  eax,[esp+4]
743
  mov  eax,[esp+4]
707
  call Kolibri_HashInt
744
  call Kolibri_HashInt
Line 739... Line 776...
739
.get_thread_data_wait_end:
776
.get_thread_data_wait_end:
740
  pop  ebx eax
777
  pop  ebx eax
741
  jmp .get_thread_data_nowait
778
  jmp .get_thread_data_nowait
742
endp
779
endp
Line -... Line 780...
-
 
780
 
743
 
781
align 4
744
proc @Kolibri@_GetSkinHeader$qv uses ebx
782
proc @Kolibri@_GetSkinHeader$qv uses ebx
745
  mov  eax,SF_STYLE_SETTINGS
783
  mov  eax,SF_STYLE_SETTINGS
746
  mov  ebx,SSF_GET_SKIN_HEIGHT
784
  mov  ebx,SSF_GET_SKIN_HEIGHT
747
  int  0x40
785
  int  0x40
748
  ret
786
  ret
Line -... Line 787...
-
 
787
endp
749
endp
788
 
750
 
789
align 4
751
proc @Kolibri@GetScreenSize$qrust1
790
proc @Kolibri@GetScreenSize$qrust1
752
  mov  eax,SF_GET_SCREEN_SIZE
791
  mov  eax,SF_GET_SCREEN_SIZE
753
  int  0x40
792
  int  0x40
Line 757... Line 796...
757
  shr  eax,16
796
  shr  eax,16
758
  mov  word [ecx],ax
797
  mov  word [ecx],ax
759
  ret
798
  ret
760
endp
799
endp
Line -... Line 800...
-
 
800
 
761
 
801
align 4
762
proc Kolibri_MutexLockNoWait
802
proc Kolibri_MutexLockNoWait
763
  pop  eax
803
  pop  eax
764
  xor  al,al
804
  xor  al,al
765
  ret
805
  ret
Line -... Line 806...
-
 
806
endp
766
endp
807
 
767
 
808
align 4
768
proc Kolibri_MutexLockWait uses ebx
809
proc Kolibri_MutexLockWait uses ebx
769
  mov  eax,SF_SLEEP
810
  mov  eax,SF_SLEEP
770
  xor  ebx,ebx
811
  xor  ebx,ebx
Line 774... Line 815...
774
  jz   .lock_wait_cycle
815
  jz   .lock_wait_cycle
775
  mov  al,1
816
  mov  al,1
776
  ret
817
  ret
777
endp
818
endp
Line -... Line 819...
-
 
819
 
778
 
820
align 4
779
proc Kolibri_MutexLockWaitTime
821
proc Kolibri_MutexLockWaitTime
780
  cmp  dword [esp+12],0
822
  cmp  dword [esp+12],0
781
  jng  .MutexLockWait
823
  jng  .MutexLockWait
782
  push ebx edx
824
  push ebx edx
Line 803... Line 845...
803
  pop  edx ebx
845
  pop  edx ebx
804
  mov  al,1
846
  mov  al,1
805
  ret
847
  ret
806
endp
848
endp
Line -... Line 849...
-
 
849
 
807
 
850
align 4
808
proc Kolibri_MutexLock
851
proc Kolibri_MutexLock
809
  shl  byte [ecx],1
852
  shl  byte [ecx],1
810
  jnz  .lock_first
853
  jnz  .lock_first
811
  call eax
854
  call eax
812
.lock_first:
855
.lock_first:
813
  mov  al,1
856
  mov  al,1
814
  ret
857
  ret
Line -... Line 858...
-
 
858
endp
815
endp
859
 
816
 
860
align 4
817
proc @Kolibri@TryLock$qp14Kolibri@TMutex
861
proc @Kolibri@TryLock$qp14Kolibri@TMutex
818
  mov  eax,Kolibri_MutexLockNoWait
862
  mov  eax,Kolibri_MutexLockNoWait
819
  mov  ecx,[esp+4]
863
  mov  ecx,[esp+4]
Line -... Line 864...
-
 
864
  jmp  Kolibri_MutexLock
820
  jmp  Kolibri_MutexLock
865
endp
821
endp
866
 
822
 
867
align 4
823
proc @Kolibri@Lock$qp14Kolibri@TMutex
868
proc @Kolibri@Lock$qp14Kolibri@TMutex
824
  mov  eax,Kolibri_MutexLockWait
869
  mov  eax,Kolibri_MutexLockWait
Line -... Line 870...
-
 
870
  mov  ecx,[esp+4]
825
  mov  ecx,[esp+4]
871
  jmp  Kolibri_MutexLock
826
  jmp  Kolibri_MutexLock
872
endp
827
endp
873
 
828
 
874
align 4
829
proc @Kolibri@LockTime$qp14Kolibri@TMutexi
875
proc @Kolibri@LockTime$qp14Kolibri@TMutexi
Line -... Line 876...
-
 
876
  mov  eax,Kolibri_MutexLockWaitTime
830
  mov  eax,Kolibri_MutexLockWaitTime
877
  mov  ecx,[esp+4]
831
  mov  ecx,[esp+4]
878
  jmp  Kolibri_MutexLock
832
  jmp  Kolibri_MutexLock
879
endp
833
endp
880
 
834
 
881
align 4
Line 845... Line 892...
845
  int  0x40
892
  int  0x40
846
  pop  ebx
893
  pop  ebx
847
  ret
894
  ret
848
endp
895
endp
Line -... Line 896...
-
 
896
 
849
 
897
align 4
850
proc Kolibri_MutexLockRec
898
proc Kolibri_MutexLockRec
851
  shl  byte [ecx],1
899
  shl  byte [ecx],1
852
  jng  .lock_first
900
  jng  .lock_first
853
  cmp  dword [ecx+4],edx
901
  cmp  dword [ecx+4],edx
Line 869... Line 917...
869
  call @Kolibri@DebugPutString$qpxc
917
  call @Kolibri@DebugPutString$qpxc
870
  pop  ecx
918
  pop  ecx
871
  jmp  @Kolibri@ExitDebug$qv
919
  jmp  @Kolibri@ExitDebug$qv
872
endp
920
endp
Line -... Line 921...
-
 
921
 
873
 
922
align 4
874
proc @Kolibri@TryLock$qp16Kolibri@TRecMutexui
923
proc @Kolibri@TryLock$qp16Kolibri@TRecMutexui
875
  mov  eax,Kolibri_MutexLockNoWait
924
  mov  eax,Kolibri_MutexLockNoWait
876
  mov  ecx,[esp+4]
925
  mov  ecx,[esp+4]
877
  mov  edx,[esp+8]
926
  mov  edx,[esp+8]
878
  jmp  Kolibri_MutexLockRec
927
  jmp  Kolibri_MutexLockRec
Line -... Line 928...
-
 
928
endp
879
endp
929
 
880
 
930
align 4
881
proc @Kolibri@Lock$qp16Kolibri@TRecMutexui
931
proc @Kolibri@Lock$qp16Kolibri@TRecMutexui
882
  mov  eax,Kolibri_MutexLockWait
932
  mov  eax,Kolibri_MutexLockWait
883
  mov  ecx,[esp+4]
933
  mov  ecx,[esp+4]
884
  mov  edx,[esp+8]
934
  mov  edx,[esp+8]
Line -... Line 935...
-
 
935
  jmp  Kolibri_MutexLockRec
885
  jmp  Kolibri_MutexLockRec
936
endp
886
endp
937
 
887
 
938
align 4
888
proc @Kolibri@LockTime$qp16Kolibri@TRecMutexiui
939
proc @Kolibri@LockTime$qp16Kolibri@TRecMutexiui
889
  mov  eax,Kolibri_MutexLockWaitTime
940
  mov  eax,Kolibri_MutexLockWaitTime
890
  mov  ecx,[esp+4]
941
  mov  ecx,[esp+4]
Line -... Line 942...
-
 
942
  mov  edx,[esp+12]
891
  mov  edx,[esp+12]
943
  jmp  Kolibri_MutexLockRec
892
  jmp  Kolibri_MutexLockRec
944
endp
893
endp
945
 
894
 
946
align 4
895
proc @Kolibri@UnLock$qp16Kolibri@TRecMutexui
947
proc @Kolibri@UnLock$qp16Kolibri@TRecMutexui
Line 920... Line 972...
920
  call @Kolibri@DebugPutString$qpxc
972
  call @Kolibri@DebugPutString$qpxc
921
  pop  ecx
973
  pop  ecx
922
  jmp  @Kolibri@ExitDebug$qv
974
  jmp  @Kolibri@ExitDebug$qv
923
endp
975
endp
Line -... Line 976...
-
 
976
 
924
 
977
align 4
925
proc @Kolibri@DebugPutChar$qc
978
proc @Kolibri@DebugPutChar$qc
926
  mov  cl,byte [esp+4]
979
  mov  cl,byte [esp+4]
927
  cmp  cl,13
980
  cmp  cl,13
928
  jz   .debug_put_char_ret
981
  jz   .debug_put_char_ret
Line 943... Line 996...
943
  int  0x40
996
  int  0x40
944
  mov  cl,10
997
  mov  cl,10
945
  jmp  .debug_put_char_after_cmp
998
  jmp  .debug_put_char_after_cmp
946
endp
999
endp
Line -... Line 1000...
-
 
1000
 
947
 
1001
align 4
948
proc @Kolibri@DebugPutString$qpxc uses esi
1002
proc @Kolibri@DebugPutString$qpxc uses esi
949
  push dword 0
1003
  push dword 0
950
  mov  esi,dword [esp+12]
1004
  mov  esi,dword [esp+12]
951
  jmp  .debug_put_string_test
1005
  jmp  .debug_put_string_test
Line 960... Line 1014...
960
  jnz  .debug_put_string_loop
1014
  jnz  .debug_put_string_loop
961
  pop  ecx
1015
  pop  ecx
962
  ret
1016
  ret
963
endp
1017
endp
Line -... Line 1018...
-
 
1018
 
964
 
1019
align 4
965
proc @Kolibri@GetKey$qv
1020
proc @Kolibri@GetKey$qv
966
  mov  eax,SF_GET_KEY
1021
  mov  eax,SF_GET_KEY
967
  int  0x40
1022
  int  0x40
968
  test al,al
1023
  test al,al
Line 972... Line 1027...
972
.get_key_eof:
1027
.get_key_eof:
973
  mov  eax,SF_TERMINATE_PROCESS
1028
  mov  eax,SF_TERMINATE_PROCESS
974
  ret
1029
  ret
975
endp
1030
endp
Line -... Line 1031...
-
 
1031
 
976
 
1032
align 4
977
proc @Kolibri@GetMouseButton$qv uses ebx
1033
proc @Kolibri@GetMouseButton$qv uses ebx
978
  mov  eax,SF_MOUSE_GET
1034
  mov  eax,SF_MOUSE_GET
979
  mov  ebx,SSF_BUTTON
1035
  mov  ebx,SSF_BUTTON
980
  int  0x40
1036
  int  0x40
981
  ret
1037
  ret
Line -... Line 1038...
-
 
1038
endp
982
endp
1039
 
983
 
1040
align 4
984
proc @Kolibri@GetMousePosition$qrst1o uses ebx
1041
proc @Kolibri@GetMousePosition$qrst1o uses ebx
985
  mov  eax,SF_MOUSE_GET
1042
  mov  eax,SF_MOUSE_GET
986
  xor  ebx,ebx ;SSF_SCREEN_POSITION
1043
  xor  ebx,ebx ;SSF_SCREEN_POSITION
Line 995... Line 1052...
995
  shr  eax,16
1052
  shr  eax,16
996
  mov  word [ecx],ax
1053
  mov  word [ecx],ax
997
  ret
1054
  ret
998
endp
1055
endp
Line -... Line 1056...
-
 
1056
 
999
 
1057
align 4
1000
proc @Kolibri@WasThreadCreated$qv
1058
proc @Kolibri@WasThreadCreated$qv
1001
  cmp  byte [@Kolibri@_ThreadSavedBegProc],0x90
1059
  cmp  byte [@Kolibri@_ThreadSavedBegProc],0x90
1002
  setz al
1060
  setz al
1003
  ret
1061
  ret
Line -... Line 1062...
-
 
1062
endp
1004
endp
1063
 
1005
 
1064
align 4
1006
proc @Kolibri@CreateThread$qpvuit1
1065
proc @Kolibri@CreateThread$qpvuit1
1007
  push ebx
1066
  push ebx
1008
  mov  edx,[esp+16]
1067
  mov  edx,[esp+16]
Line 1076... Line 1135...
1076
  stosd
1135
  stosd
1077
  pop  edi esi
1136
  pop  edi esi
1078
  jmp  .create_thread_fill_stack
1137
  jmp  .create_thread_fill_stack
1079
endp
1138
endp
Line -... Line 1139...
-
 
1139
 
1080
 
1140
align 4
1081
proc @Kolibri@_FileAccess$qp21Kolibri@FileInfoBlock uses ebx
1141
proc @Kolibri@_FileAccess$qp21Kolibri@FileInfoBlock uses ebx
1082
  mov  eax,SF_FILE
1142
  mov  eax,SF_FILE
1083
  mov  ebx,[esp+8]
1143
  mov  ebx,[esp+8]
1084
  int  0x40
1144
  int  0x40