Advertisement
erfanul007

EVENT SEARCHING

Dec 21st, 2019
380
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ;;Events.txt STARTS
  2. ;16-12-2019
  3. ;
  4. ;28-08-2020
  5. ;AMAR BIRTHDAY
  6. ;AMI NACHBO
  7. ;TMRA AMR CAKE KATBA
  8. ;
  9. ;16-12-2019
  10. ;VICTORY DAY OF BANGLADESH
  11. ;48TH VICTORY DAY OF BD
  12. ;2021 WILL BE THE HALF CENTURY
  13. ;SOKAL 10 TAY PARADE DEKHTE JABO
  14. ;2021 BD TE WORLD FINALS HOBE
  15. ;
  16. ;22-12-2019
  17. ;PROJECT COMPLETE KORLAM
  18. ;PERA SHESH
  19. ;FILE INPUT OUTPUT NIA ONK JHAMELA KORTE HOISE
  20. ;BUDDHI THAKLE UPAY HOY
  21. ;
  22. ;01-01-2020
  23. ;NEW SEMESTER NEW YEAR
  24. ;3RD YEAR E UTHE GESI
  25. ;BORO VAI KOIBA AMARE B-)
  26. ;
  27. ;;EVENT TEXT FINISHED
  28.  
  29.  
  30. ;;PROJECT EVENT SEARCHING BY DATE
  31. ;;PROJECT MEMBERS
  32. ;;MD. ERFANUL ISLAM (181-15-10777)
  33. ;;AYESHA BINTE KHAIR (181-15-11102)
  34.  
  35. INCLUDE "EMU8086.INC"
  36. .MODEL SMALL
  37. .STACK 100H
  38. .DATA
  39.  
  40.     FNAME1 DB "Events.txt",0
  41.     TEXT DB 100 DUP('$')
  42.     INPUT DB 100 DUP('$')
  43.     FHAND DW ?
  44.     CHAR DB ?
  45.     CHK DB 0
  46.  
  47. .CODE
  48.   MAIN PROC
  49.     MOV AX, @DATA
  50.     MOV DS,AX
  51.    
  52.     MOV AH,3DH                    ;OPEN FILE
  53.     MOV AL,0        
  54.     LEA DX, FNAME1  
  55.     INT 21H          
  56.     MOV FHAND, AX
  57.    
  58.     INPUT_STARTS:
  59.       MOV SI,0
  60.       IN1:
  61.         MOV AH,3FH                ;READ FILE FIRST LINE INPUT
  62.         MOV BX,FHAND              ;DATE FORMATE : DD-MM-YYYY
  63.         MOV CX,1
  64.         LEA DX,CHAR
  65.         INT 21H
  66.        
  67.         CMP AX,0                  
  68.         JE EXIT
  69.      
  70.         MOV AL,CHAR      
  71.      
  72.         CMP AL,10
  73.         JE INPUT_ENDS
  74.         MOV INPUT[SI],AL
  75.         INC SI
  76.         JMP IN1
  77.        
  78.     INPUT_ENDS:
  79.       MOV INPUT[SI],'$'
  80.       MOV AH,9
  81.       LEA DX,INPUT
  82.       INT 21H
  83.          
  84.     NEW_LINE:  
  85.       MOV SI,0
  86.       IN2:
  87.         MOV AH,3FH                 ;READ FILE FROM SECOND LINE
  88.         MOV BX,FHAND
  89.         MOV CX,1
  90.         LEA DX,CHAR
  91.         INT 21H
  92.      
  93.         CMP AX,0
  94.         JE EXIT
  95.      
  96.         MOV AL,CHAR
  97.      
  98.         CMP AL,10
  99.         JE COMPARE
  100.         MOV TEXT[SI],AL
  101.         INC SI
  102.         JMP IN2
  103.        
  104.         COMPARE:
  105.           MOV TEXT[SI],'$'
  106.          
  107.           MOV SI,0
  108.          
  109.           L2:
  110.             MOV AL,TEXT[SI]        ;COMPARE INPUT AND TEXT LINES CHAR BY CHAR
  111.             MOV BL,INPUT[SI]
  112.             CMP AL,BL
  113.             JNE NEW_LINE           ;IF NOT SAME CHECK NEXT LINE
  114.             CMP AL,'$'
  115.             JE SAME
  116.             INC SI
  117.             JMP L2
  118.          
  119.           SAME:
  120.             MOV AL,1
  121.             MOV CHK,AL
  122.             PRINTN
  123.             PRINT "EVENTS ON THIS DAY:"
  124.             PRINTN
  125.             PRINT_EVENTS:          ;IF SAME PRINT ALL EVENTS UNDER THIS DATE
  126.               MOV SI,0
  127.               OUT1:
  128.                 MOV AH,3FH         ;READ FILE
  129.                 MOV BX,FHAND
  130.                 MOV CX,1
  131.                 LEA DX,CHAR
  132.                 INT 21H
  133.      
  134.                 CMP AX,0           ;EXIT IF END OF FILE FOUND
  135.                 JE EXIT
  136.      
  137.                 MOV AL,CHAR
  138.      
  139.                 CMP AL,10
  140.                 JE PRINT_VAL
  141.                 MOV TEXT[SI],AL
  142.                 INC SI
  143.                 JMP OUT1
  144.                
  145.               PRINT_VAL:            
  146.                 MOV TEXT[SI],'$'
  147.                
  148.                 MOV SI,2
  149.                 MOV AL,TEXT[SI]     ;COMPARE IF ANOTHER DATE IS THERE
  150.                 CMP AL,'-'
  151.                 JNE PR:
  152.                
  153.                 MOV SI,5
  154.                 MOV AL,TEXT[SI]
  155.                 CMP AL,'-'
  156.                 JNE PR:
  157.                 JMP EXIT
  158.                 PR:
  159.                   PRINTN            ;PRINT THE LINE
  160.                   MOV AH,9
  161.                   LEA DX,TEXT
  162.                   INT 21H
  163.                   JMP PRINT_EVENTS
  164.                  
  165.  
  166.     EXIT:
  167.       MOV AL,CHK
  168.       CMP AL,0
  169.       JNE ENDD                      ;JUMP IF EVENTS FOUND
  170.       PRINTN
  171.       PRINT "NO EVENT ON THIS DAY"
  172.       ENDD:
  173.       MOV AH,3EH                    ;CLOSE FILE
  174.       MOV BX,FHAND
  175.       INT 21H
  176.       MOV AH,4CH
  177.       INT 21H
  178.   ENDP MAIN
  179. END MAIN
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement