Subversion Repositories Kolibri OS

Rev

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

Rev 340 Rev 452
Line 6... Line 6...
6
; Last changed: January 13, 2005
6
; Last changed: January 13, 2005
7
;
7
;
8
; COMPILE WITH FASM
8
; COMPILE WITH FASM
Line 9... Line 9...
9
 
9
 
10
WIN_X equ (150 shl 16+270)
10
WIN_X equ (150 shl 16+270)
Line 11... Line 11...
11
WIN_Y equ (100 shl 16+300)
11
WIN_Y equ (100 shl 16+335)
12
 
12
 
13
LINE1	  equ 27 shl 16+16
13
LINE1	  equ 27 shl 16+16
14
B_MONTH_X equ 10 shl 16+158
14
B_MONTH_X equ 10 shl 16+158
Line 269... Line 269...
269
 
269
 
Line 270... Line 270...
270
    call draw_window	; ¢ë§ë¢ ¥¬ ¯à®æ¥¤ãàã ®âà¨á®¢ª¨ ®ª­ 
270
    call draw_window	; ¢ë§ë¢ ¥¬ ¯à®æ¥¤ãàã ®âà¨á®¢ª¨ ®ª­ 
Line 271... Line 271...
271
 
271
 
272
still:			; ƒ‹€‚›‰ –ˆŠ‹ Žƒ€ŒŒ›
272
still:			; ƒ‹€‚›‰ –ˆŠ‹ Žƒ€ŒŒ›
-
 
273
 
273
 
274
    mov  eax,23 		; wait here for event
274
    mov  eax,10 	; äã­ªæ¨ï 10 - ¦¤ âì ᮡëâ¨ï
275
    mov  ebx,50
275
    int  0x40		; ¢ë§ë¢ ¥¬ á¨á⥬ã
276
    mcall
276
  .evt:
277
  .evt:
277
    mov  ebp,[focus]
278
    mov  ebp,[focus]
278
    cmp  eax,1		; ¯¥à¥à¨á®¢ âì ®ª­® ?
279
    cmp  eax,1		; ¯¥à¥à¨á®¢ âì ®ª­® ?
279
    je	 red		; ¥á«¨ ¤  - ­  ¬¥âªã red
280
    je	 red		; ¥á«¨ ¤  - ­  ¬¥âªã red
280
    cmp  eax,2		; ­ ¦ â  ª« ¢¨è  ?
281
    cmp  eax,2		; ­ ¦ â  ª« ¢¨è  ?
Line -... Line 282...
-
 
282
    je	 key		; ¥á«¨ ¤  - ­  key
-
 
283
    cmp  eax,3		; ­ ¦ â  ª­®¯ª  ?
281
    je	 key		; ¥á«¨ ¤  - ­  key
284
    je	 button 	; ¥á«¨ ¤  - ­  button
Line 282... Line 285...
282
    cmp  eax,3		; ­ ¦ â  ª­®¯ª  ?
285
 
283
    je	 button 	; ¥á«¨ ¤  - ­  button
286
    call draw_clock
284
 
287
 
285
    jmp  still		; ¥á«¨ ¤à㣮¥ ᮡë⨥ - ¢ ­ ç «® 横« 
288
    jmp  still		; ¥á«¨ ¤à㣮¥ ᮡë⨥ - ¢ ­ ç «® 横« 
286
 
289
 
287
  key:			; ­ ¦ â  ª« ¢¨è  ­  ª« ¢¨ âãà¥
290
  key:			; ­ ¦ â  ª« ¢¨è  ­  ª« ¢¨ âãà¥
288
    mov  eax,2		; äã­ªæ¨ï 2 - áç¨â âì ª®¤ ᨬ¢®« 
291
    mov  eax,2		; äã­ªæ¨ï 2 - áç¨â âì ª®¤ ᨬ¢®« 
289
    int  0x40		; ¢ë§®¢ á¨á⥬ë
292
    mcall		; ¢ë§®¢ á¨á⥬ë
Line 353... Line 356...
353
 
356
 
Line 354... Line 357...
354
day_bounds db -1,0,7,0,-7,0,1,0 ; left,down,up,right
357
day_bounds db -1,0,7,0,-7,0,1,0 ; left,down,up,right
355
 
358
 
356
  button:		; ­ ¦ â  ª­®¯ª  ¢ ®ª­¥ ¯à®£à ¬¬ë
359
  button:		; ­ ¦ â  ª­®¯ª  ¢ ®ª­¥ ¯à®£à ¬¬ë
357
    mov  eax,17 	; 17 - ¯®«ãç¨âì ¨¤¥­â¨ä¨ª â®à ­ ¦ â®© ª­®¯ª¨
360
    mov  eax,17 	; 17 - ¯®«ãç¨âì ¨¤¥­â¨ä¨ª â®à ­ ¦ â®© ª­®¯ª¨
358
    int  0x40		; ¢ë§®¢ á¨á⥬ë
361
    mcall		; ¢ë§®¢ á¨á⥬ë
359
    movzx ebx,ah
362
    movzx ebx,ah
360
    cmp  ah,200
363
    cmp  ah,200
361
    jbe  nodayselect
364
    jbe  nodayselect
Line 378... Line 381...
378
  no_list:
381
  no_list:
379
    cmp  ah,1		; ¨¤¥­â¨ä¨ª â®à == 1 ?
382
    cmp  ah,1		; ¨¤¥­â¨ä¨ª â®à == 1 ?
380
    jne  noclose	; ¥á«¨ ­¥â - ¨¤¨ ¢¯¥àñ¤ ­  noclose
383
    jne  noclose	; ¥á«¨ ­¥â - ¨¤¨ ¢¯¥àñ¤ ­  noclose
381
  close:
384
  close:
382
    or	 eax,-1 	; ¢ë室 ¨§ ¯à®£à ¬¬ë
385
    or	 eax,-1 	; ¢ë室 ¨§ ¯à®£à ¬¬ë
383
    int  0x40		; ¢ë§®¢ á¨á⥬ë
386
    mcall		; ¢ë§®¢ á¨á⥬ë
Line 384... Line 387...
384
 
387
 
-
 
388
  noclose:
-
 
389
 
-
 
390
    cmp  ah,72
-
 
391
    je	 plus_he
-
 
392
 
-
 
393
    cmp  ah,73
-
 
394
    je	 plus_hd
-
 
395
 
-
 
396
    cmp  ah,74
-
 
397
    je	 minus_he
-
 
398
 
-
 
399
    cmp  ah,75
-
 
400
    je	 minus_hd
-
 
401
 
-
 
402
    cmp  ah,76
-
 
403
    je	 plus_me
-
 
404
 
-
 
405
    cmp  ah,77
-
 
406
    je	 plus_md
-
 
407
 
-
 
408
    cmp  ah,78
-
 
409
    je	 minus_me
-
 
410
 
-
 
411
    cmp  ah,79
-
 
412
    je	 minus_md
-
 
413
 
-
 
414
    cmp  ah,80
-
 
415
    je	 reset
-
 
416
 
-
 
417
    ;jmp  still
-
 
418
 
-
 
419
 
385
  noclose:
420
 
386
    cmp  ah,2		; drop down list
421
    cmp  ah,2		; drop down list
387
    jne  no_dropdn
422
    jne  no_dropdn
388
  .drop:
423
  .drop:
389
    mov  [focus],2
424
    mov  [focus],2
Line 392... Line 427...
392
    call draw_window
427
    call draw_window
393
    mov  edx,1 shl 31+231
428
    mov  edx,1 shl 31+231
394
    mov  ecx,31
429
    mov  ecx,31
395
    mov  eax,8
430
    mov  eax,8
396
  .bremove:
431
  .bremove:
397
    int  0x40
432
    mcall
398
    dec  edx
433
    dec  edx
399
    loop .bremove
434
    loop .bremove
400
    call draw_dropdown
435
    call draw_dropdown
401
    jmp  still
436
    jmp  still
402
  no_dropdn:
437
  no_dropdn:
Line 461... Line 496...
461
    jne  start
496
    jne  start
462
    xor  [new_style],1
497
    xor  [new_style],1
463
    jmp  upd
498
    jmp  upd
Line -... Line 499...
-
 
499
 
-
 
500
 
-
 
501
reset:
-
 
502
 
-
 
503
    mov  eax,3
-
 
504
    mcall
-
 
505
    mov  ecx,eax
-
 
506
    shl  ecx,16
-
 
507
    shr  ecx,16
-
 
508
    mov  eax,22
-
 
509
    mov  ebx,0x00000000
-
 
510
    mcall
-
 
511
 
-
 
512
    jmp  still
-
 
513
 
-
 
514
plus_hd:
-
 
515
 
-
 
516
    mov  eax,3
-
 
517
    mcall
-
 
518
    mov  ecx,eax
-
 
519
    add  ecx,1
-
 
520
    mov  eax,22
-
 
521
    mov  ebx,0x00000000
-
 
522
    mcall
-
 
523
 
-
 
524
    jmp  still
-
 
525
 
-
 
526
plus_he:
-
 
527
 
-
 
528
    mov  eax,3
-
 
529
    mcall
-
 
530
    mov  ecx,eax
-
 
531
    add  ecx,16
-
 
532
    mov  eax,22
-
 
533
    mov  ebx,0x00000000
-
 
534
    mcall
-
 
535
 
-
 
536
    jmp  still
-
 
537
 
-
 
538
minus_hd:
-
 
539
 
-
 
540
    mov  eax,3
-
 
541
    mcall
-
 
542
    mov  ecx,eax
-
 
543
    sub  ecx,1
-
 
544
    mov  eax,22
-
 
545
    mov  ebx,0x00000000
-
 
546
    mcall
-
 
547
 
-
 
548
    jmp  still
-
 
549
 
-
 
550
minus_he:
-
 
551
 
-
 
552
    mov  eax,3
-
 
553
    mcall
-
 
554
    mov  ecx,eax
-
 
555
    sub  ecx,16
-
 
556
    mov  eax,22
-
 
557
    mov  ebx,0x00000000
-
 
558
    mcall
-
 
559
 
-
 
560
    jmp  still
-
 
561
 
-
 
562
plus_md:
-
 
563
 
-
 
564
    mov  eax,3
-
 
565
    mcall
-
 
566
    mov  ecx,eax
-
 
567
    add  ecx,256
-
 
568
    mov  eax,22
-
 
569
    mov  ebx,0x00000000
-
 
570
    mcall
-
 
571
 
-
 
572
    jmp  still
-
 
573
 
-
 
574
plus_me:
-
 
575
 
-
 
576
    mov  eax,3
-
 
577
    mcall
-
 
578
    mov  ecx,eax
-
 
579
    add  ecx,4096
-
 
580
    mov  eax,22
-
 
581
    mov  ebx,0x00000000
-
 
582
    mcall
-
 
583
 
-
 
584
    jmp  still
-
 
585
 
-
 
586
minus_md:
-
 
587
 
-
 
588
    mov  eax,3
-
 
589
    mcall
-
 
590
    mov  ecx,eax
-
 
591
    sub  ecx,256
-
 
592
    mov  eax,22
-
 
593
    mov  ebx,0x00000000
-
 
594
    mcall
-
 
595
 
-
 
596
    jmp  still
-
 
597
 
-
 
598
minus_me:
-
 
599
 
-
 
600
    mov  eax,3
-
 
601
    mcall
-
 
602
    mov  ecx,eax
-
 
603
    sub  ecx,4096
-
 
604
    mov  eax,22
-
 
605
    mov  ebx,0x00000000
-
 
606
    mcall
-
 
607
 
464
 
608
    jmp  still
465
 
609
 
466
;   *********************************************
610
;   *********************************************
Line -... Line 611...
-
 
611
;   *******  Ž…„…‹…ˆ… ˆ Ž’ˆ‘Ž‚Š€ ŽŠ€ *******
-
 
612
;   *********************************************
-
 
613
 
-
 
614
draw_clock:
-
 
615
 
-
 
616
    mov  eax,3
-
 
617
    mcall
-
 
618
    mov  ecx,eax
-
 
619
    mov  eax,47
-
 
620
    mov esi,0x50000000
-
 
621
    mov  edi,0xaabbcc
-
 
622
    mov  ebx,0x00020100
-
 
623
    mov  edx,205*65536+280
-
 
624
    mcall
-
 
625
 
-
 
626
    shr  ecx,8
-
 
627
    add  edx,20*65536
-
 
628
    ;mov  eax,47
-
 
629
    mcall
-
 
630
 
-
 
631
    shr  ecx,8
-
 
632
    add  edx,20*65536
-
 
633
    ;mov  eax,47
467
;   *******  Ž…„…‹…ˆ… ˆ Ž’ˆ‘Ž‚Š€ ŽŠ€ *******
634
    mcall
Line -... Line 635...
-
 
635
    ret
468
;   *********************************************
636
 
469
 
637
draw_window:
470
draw_window:
638
 
471
 
639
 
472
    mov  eax,12 		   ; äã­ªæ¨ï 12: á®®¡é¨âì Ž‘ ®¡ ®âà¨á®¢ª¥ ®ª­ 
640
    mov  eax,12 		   ; äã­ªæ¨ï 12: á®®¡é¨âì Ž‘ ®¡ ®âà¨á®¢ª¥ ®ª­ 
473
    mov  ebx,1			   ; 1 - ­ ç¨­ ¥¬ à¨á®¢ âì
641
    mov  ebx,1			   ; 1 - ­ ç¨­ ¥¬ à¨á®¢ âì
474
    int  0x40
642
    mcall
475
				   ; ‘Ž‡„€ðŒ ŽŠŽ
643
				   ; ‘Ž‡„€ðŒ ŽŠŽ
476
    xor  eax,eax		   ; äã­ªæ¨ï 0 : ®¯à¥¤¥«¨âì ¨ ®âà¨á®¢ âì ®ª­®
644
    xor  eax,eax		   ; äã­ªæ¨ï 0 : ®¯à¥¤¥«¨âì ¨ ®âà¨á®¢ âì ®ª­®
477
    mov  ebx,WIN_X
645
    mov  ebx,WIN_X
478
  if SKIP eq 0
646
  if SKIP eq 0
479
    mov  ecx,WIN_Y
647
    mov  ecx,WIN_Y
480
  else
648
  else
481
    mov  ecx,WIN_Y-15
649
    mov  ecx,WIN_Y-15
482
  end if
650
  end if
Line 483... Line 651...
483
    mov  edx,0x13aabbcc 	   ; 梥â à ¡®ç¥© ®¡« á⨠ RRGGBB,8->color gl
651
    mov  edx,0x13aabbcc 	   ; 梥â à ¡®ç¥© ®¡« á⨠ RRGGBB,8->color gl
-
 
652
    mov  edi,header		   ; § £®«®¢®ª
-
 
653
    mcall
-
 
654
    call draw_week
-
 
655
 
-
 
656
    mov  eax,8
-
 
657
    mov  ebx,205*65536+7
-
 
658
    mov  ecx,290*65536+10
-
 
659
    mov  esi,0x005555dd
-
 
660
    mov  edx,72
-
 
661
    mcall
-
 
662
 
-
 
663
    ;mov  eax,8
-
 
664
    mov  ebx,212*65536+7
-
 
665
    ;mov  ecx,290*65536+10
-
 
666
    ;mov  esi,0x005555dd
-
 
667
    inc  edx
-
 
668
    mcall
-
 
669
 
-
 
670
    ;mov  eax,8
-
 
671
    mov  ebx,205*65536+7
-
 
672
    mov  ecx,300*65536+10
-
 
673
    ;mov  esi,0x005555dd
-
 
674
    inc  edx
-
 
675
    mcall
-
 
676
 
-
 
677
    ;mov  eax,8
-
 
678
    mov  ebx,212*65536+7
-
 
679
    ;mov  ecx,300*65536+10
-
 
680
    ;mov  esi,0x005555dd
-
 
681
    inc  edx
-
 
682
    mcall
-
 
683
 
-
 
684
    ;mov  eax,8
-
 
685
    mov  ebx,224*65536+7
-
 
686
    mov  ecx,290*65536+10
-
 
687
    ;mov  esi,0x005555dd
-
 
688
    inc  edx
-
 
689
    mcall
-
 
690
 
-
 
691
    ;mov  eax,8
-
 
692
    mov  ebx,231*65536+7
-
 
693
    ;mov  ecx,290*65536+10
-
 
694
    ;mov  esi,0x005555dd
-
 
695
    inc  edx
-
 
696
    mcall
-
 
697
 
-
 
698
    ;mov  eax,8
-
 
699
    mov  ebx,224*65536+7
-
 
700
    mov  ecx,300*65536+10
-
 
701
    ;mov  esi,0x005555dd
-
 
702
    inc  edx
-
 
703
    mcall
-
 
704
 
-
 
705
    ;mov  eax,8
-
 
706
    mov  ebx,231*65536+7
-
 
707
    ;mov  ecx,300*65536+10
-
 
708
    ;mov  esi,0x005555dd
-
 
709
    inc  edx
-
 
710
    mcall
-
 
711
 
-
 
712
    ;mov  eax,8
-
 
713
    mov  ebx,243*65536+14
-
 
714
    mov  ecx,290*65536+20
484
    mov  edi,header              ; § £®«®¢®ª
715
    mov  esi,0x00dd7777
485
    int  0x40
716
    inc  edx
486
    call draw_week
717
    mcall
487
 
718
 
488
    mov  eax,8
719
    mov  eax,8
489
    mov  esi,0x05080d0
720
    mov  esi,0x05080d0
490
  if SKIP eq 0
721
  if SKIP eq 0
491
    mov  ebx,B_DATE_X
722
    mov  ebx,B_DATE_X
492
    mov  ecx,B_DATE_Y
723
    mov  ecx,B_DATE_Y
493
    mov  edx,eax
724
    mov  edx,eax
494
    int  0x40
725
    mcall
495
    inc  edx
726
    inc  edx
496
    add  ebx,B_DATE_BSHIFT
727
    add  ebx,B_DATE_BSHIFT
497
    int  0x40
728
    mcall
498
    inc  edx
729
    inc  edx
499
  else
730
  else
500
    mov  edx,10
731
    mov  edx,10
501
  end if
732
  end if
502
    or	 edx,1 shl 29+1 shl 30
733
    or	 edx,1 shl 29+1 shl 30
503
    mov  ebx,B_NS_X
734
    mov  ebx,B_NS_X
504
    mov  ecx,B_NS_Y
735
    mov  ecx,B_NS_Y
505
    int  0x40
736
    mcall
506
    add  edx,1-1 shl 29
737
    add  edx,1-1 shl 29
507
    mov  ebx,B_TODAY_X+8*(today_end-today_msg)
738
    mov  ebx,B_TODAY_X+8*(today_end-today_msg)
508
    mov  ecx,B_TODAY_Y
739
    mov  ecx,B_TODAY_Y
509
    int  0x40
740
    mcall
510
    mov  ecx,B_Y
741
    mov  ecx,B_Y
511
    mov  ebx,B_MONTH_X
742
    mov  ebx,B_MONTH_X
512
    mov  edx,2
743
    mov  edx,2
513
    int  0x40
744
    mcall
514
    mov  ebx,B_SPIN_X
745
    mov  ebx,B_SPIN_X
515
    inc  edx
746
    inc  edx
Line 516... Line 747...
516
    int  0x40
747
    mcall
-
 
748
    add  ebx,B_SPIN_WIDTH shl 16
-
 
749
    inc  edx
-
 
750
    mcall
-
 
751
    call draw_days
-
 
752
 
-
 
753
    mov  eax,4			   ; äã­ªæ¨ï 4 : ­ ¯¨á âì ¢ ®ª­¥ ⥪áâ
-
 
754
    mov  ebx,110*65536+280
-
 
755
    mov  ecx,0x800000ff
-
 
756
    mov  edx,sys_text
-
 
757
    mcall
-
 
758
 
-
 
759
    ;mov  eax,4
-
 
760
    mov  ebx,149*65536+302
-
 
761
    ;mov  ecx,0x800000ff
-
 
762
    mov  edx,minus
-
 
763
    mcall
-
 
764
 
-
 
765
    ;mov  eax,4
-
 
766
    mov  ebx,137*65536+292
517
    add  ebx,B_SPIN_WIDTH shl 16
767
    mov  ecx,0x80ff0000
Line 518... Line 768...
518
    inc  edx
768
    mov  edx,plus
519
    int  0x40
769
    mcall
520
    call draw_days
770
 
521
 
771
 
522
    mov  eax,4			   ; äã­ªæ¨ï 4 : ­ ¯¨á âì ¢ ®ª­¥ ⥪áâ
772
    ;mov  eax,4
523
    mov  ecx,0x10ddeeff 	   ; èà¨äâ 1 ¨ 梥â ( 0xF0RRGGBB )
773
    mov  ecx,0x10ddeeff 	   ; èà¨äâ 1 ¨ 梥â ( 0xF0RRGGBB )
524
 
774
 
525
 if SKIP eq 0
775
 if SKIP eq 0
526
    mov  ebx,B_DATE
776
    mov  ebx,B_DATE
527
    mov  edx,datebut
777
    mov  edx,datebut
528
    mov  esi,9
778
    mov  esi,9
529
    btc  ecx,28
779
    btc  ecx,28
530
    int  0x40
780
    mcall
531
    add  ebx,B_DATE_SHIFT
781
    add  ebx,B_DATE_SHIFT
Line 540... Line 790...
540
    mov  ecx,0xa0a0a0
790
    mov  ecx,0xa0a0a0
541
    jmp  .int
791
    jmp  .int
542
  .high:
792
  .high:
543
    mov  ecx,0xac0000;d048c8
793
    mov  ecx,0xac0000;d048c8
544
  .int:
794
  .int:
545
    int  0x40
795
    mcall
Line 546... Line 796...
546
 
796
 
547
    mov  ecx,0xd048c8
797
    mov  ecx,0xd048c8
548
    mov  edx,today_msg
798
    mov  edx,today_msg
549
    mov  ebx,B_TODAY
799
    mov  ebx,B_TODAY
550
    mov  esi,today_end-today_msg
800
    mov  esi,today_end-today_msg
Line 551... Line 801...
551
    int  0x40
801
    mcall
552
 
802
 
553
    mov  ebx,B_SPIN
803
    mov  ebx,B_SPIN
554
    mov  edx,spinner
804
    mov  edx,spinner
555
    mov  esi,3
805
    mov  esi,3
Line 556... Line 806...
556
    ShowFocus 4
806
    ShowFocus 4
557
    int  0x40
807
    mcall
558
 
808
 
559
    mov  edx,[Month]
809
    mov  edx,[Month]
560
    movzx  esi,byte[month_name]
810
    movzx  esi,byte[month_name]
561
    imul edx,esi
811
    imul edx,esi
562
    add  edx,month_name+1
812
    add  edx,month_name+1
Line 563... Line 813...
563
    mov  ebx,B_MONTH
813
    mov  ebx,B_MONTH
564
    ShowFocus 2
814
    ShowFocus 2
565
    int  0x40
815
    mcall
566
 
816
 
567
    call draw_year
817
    call draw_year
568
    mov  [dropped],0
818
    mov  [dropped],0
Line 569... Line 819...
569
    mov  eax,12 		   ; äã­ªæ¨ï 12: á®®¡é¨âì Ž‘ ®¡ ®âà¨á®¢ª¥ ®ª­ 
819
    mov  eax,12 		   ; äã­ªæ¨ï 12: á®®¡é¨âì Ž‘ ®¡ ®âà¨á®¢ª¥ ®ª­ 
570
    mov  ebx,2			   ; 2, § ª®­ç¨«¨ à¨á®¢ âì
820
    mov  ebx,2			   ; 2, § ª®­ç¨«¨ à¨á®¢ âì
571
    int  0x40
821
    mcall
Line 592... Line 842...
592
    push ecx
842
    push ecx
593
    mov  ebx,B_MONTH_X
843
    mov  ebx,B_MONTH_X
594
    mov  ecx,[esp+4]
844
    mov  ecx,[esp+4]
595
    mov  esi,0x6f9fef
845
    mov  esi,0x6f9fef
596
    mov  eax,8
846
    mov  eax,8
597
    int  0x40
847
    mcall
598
    shr  eax,1
848
    shr  eax,1
599
    mov  ebx,[esp+8]
849
    mov  ebx,[esp+8]
600
    xchg edx,[esp+12]
850
    xchg edx,[esp+12]
601
    movzx esi,byte[month_name]
851
    movzx esi,byte[month_name]
602
    ShowFocus edi
852
    ShowFocus edi
603
    int  0x40
853
    mcall
604
    add  edx,esi
854
    add  edx,esi
605
    xchg edx,[esp+12]
855
    xchg edx,[esp+12]
606
    add  dword[esp+8],16
856
    add  dword[esp+8],16
607
    add  dword[esp+4],16 shl 16
857
    add  dword[esp+4],16 shl 16
608
    inc  edx
858
    inc  edx
Line 614... Line 864...
614
draw_week:
864
draw_week:
615
    mov  eax,13
865
    mov  eax,13
616
    mov  ebx,B_WBAR_X
866
    mov  ebx,B_WBAR_X
617
    mov  ecx,B_WBAR_Y
867
    mov  ecx,B_WBAR_Y
618
    mov  edx,0x90a0b0
868
    mov  edx,0x90a0b0
619
    int  0x40
869
    mcall
620
    movzx esi,byte[week_days]
870
    movzx esi,byte[week_days]
621
    movzx edi,byte[week_days+1]
871
    movzx edi,byte[week_days+1]
622
    mov  ebx,B_WEEK
872
    mov  ebx,B_WEEK
623
    mov  ecx,7
873
    mov  ecx,7
624
    mov  edx,week_days+2
874
    mov  edx,week_days+2
Line 630... Line 880...
630
    mov  ecx,0x10000000
880
    mov  ecx,0x10000000
631
    jmp  .noholiday
881
    jmp  .noholiday
632
  .holiday:
882
  .holiday:
633
    mov  ecx,0x10cc1010
883
    mov  ecx,0x10cc1010
634
  .noholiday:
884
  .noholiday:
635
    int  0x40
885
    mcall
636
    add  edx,esi
886
    add  edx,esi
637
    add  ebx,B_WX_SHIFT
887
    add  ebx,B_WX_SHIFT
638
    pop  ecx
888
    pop  ecx
639
    loop .week
889
    loop .week
640
    ret
890
    ret
Line 642... Line 892...
642
draw_days:
892
draw_days:
643
    mov  eax,13
893
    mov  eax,13
644
    mov  ebx,B_DBAR_X
894
    mov  ebx,B_DBAR_X
645
    mov  ecx,B_DBAR_Y
895
    mov  ecx,B_DBAR_Y
646
    mov  edx,0xe0e0e0
896
    mov  edx,0xe0e0e0
647
    int  0x40
897
    mcall
648
    call count_days
898
    call count_days
649
    cmp  ecx,[day_sel]
899
    cmp  ecx,[day_sel]
650
    jae  .ok
900
    jae  .ok
651
    mov  [day_sel],ecx
901
    mov  [day_sel],ecx
652
  .ok:
902
  .ok:
Line 690... Line 940...
690
    jne  .draw_but
940
    jne  .draw_but
691
    mov  esi,0xef7840;0xe26830
941
    mov  esi,0xef7840;0xe26830
692
  .draw_but:
942
  .draw_but:
693
    add  edx,200+1 shl 29
943
    add  edx,200+1 shl 29
694
    mov  eax,8
944
    mov  eax,8
695
    int  0x40
945
    mcall
696
    popa
946
    popa
697
    int  0x40
947
    mcall
698
    pop  ecx
948
    pop  ecx
699
    inc  edi
949
    inc  edi
700
    cmp  edi,7
950
    cmp  edi,7
701
    jne  .nowrap
951
    jne  .nowrap
702
    xor  edi,edi
952
    xor  edi,edi
Line 784... Line 1034...
784
    mov  [firstday],edx
1034
    mov  [firstday],edx
785
    ret
1035
    ret
Line 786... Line 1036...
786
 
1036
 
Line 787... Line 1037...
787
; ‡¤¥áì ­ å®¤ïâáï ¤ ­­ë¥ ¯à®£à ¬¬ë:
1037
; ‡¤¥áì ­ å®¤ïâáï ¤ ­­ë¥ ¯à®£à ¬¬ë:
788
 
1038
 
789
; ¨­â¥àä¥©á ¯à®£à ¬¬ë ¤¢ãï§ëç­ë© - § ¤ ©â¥ ï§ëª ¢ macros.inc
1039
; ¨­â¥àä¥©á ¯à®£à ¬¬ë ¬­®£®ï§ëç­ë© - § ¤ ©â¥ ï§ëª ¢ lang.inc
Line 790... Line 1040...
790
day_count db 3,0,3,2,3,2,3,3,2,3,2,3
1040
day_count db 3,0,3,2,3,2,3,3,2,3,2,3
791
Fkeys	  db 210,211,212,213,214,215,216,217,208,209,228,159
1041
Fkeys	  db 210,211,212,213,214,215,216,217,208,209,228,159
Line 850... Line 1100...
850
today_end:
1100
today_end:
851
focus dd  3
1101
focus dd  3
852
new_style dd 1
1102
new_style dd 1
853
dropped db 0
1103
dropped db 0
Line -... Line 1104...
-
 
1104
 
-
 
1105
co_text:  db  '¢à¥¬ï á¥áᨨ',0
-
 
1106
sys_text:  db  'á¨á⥬­®¥ ¢à¥¬ï',0
-
 
1107
plus:  db  '¤®¡ ¢¨âì(+)',0
-
 
1108
minus:	db  'ã¡à âì(-)',0
854
 
1109
 
855
I_END:	; ª®­¥æ ¯à®£à ¬¬ë
1110
I_END:	; ª®­¥æ ¯à®£à ¬¬ë
856
firstday  dd ?
1111
firstday  dd ?
857
Year dd   ?
1112
Year dd   ?
858
Month dd  ?
1113
Month dd  ?