home *** CD-ROM | disk | FTP | other *** search
/ Chip 1998 July / Chip_1998-07_cd.bin / ctenari / Labyrint / DATA / FREE / SVATEK.RAR / SVATEK.O4 < prev    next >
Text File  |  1994-09-12  |  20KB  |  767 lines

  1. .model tiny
  2. .code
  3. org 100h
  4.  
  5. start:
  6.        mov  ah,2ah                 ; cti systemove datum
  7.        int  21h
  8.                                    ; ulozeni soucasneho data
  9.        mov  sden,dl                ; den
  10.        mov  smesic,dh              ; mesic
  11.        mov  srok,cx                ; rok
  12.                                    ; datum na zjisteni svatku
  13.        mov  ndent,al               ; den v tydnu
  14.        mov  nden,dl                ; den
  15.        mov  nmesic,dh              ; mesic
  16.        mov  nrok,cx                ; rok
  17.        mov  ah,2fh                 ; cti pocatek DTA
  18.        int  21h
  19.        mov  al,byte ptr es:[bx]    ; al - delka parametru
  20.        cmp  al,0                   ; zjisti je-li parametr
  21.        je   preved                 ; neni-li jdi az na prevod
  22.                                    ; je-li,tak ho preved na datum
  23. mezery:
  24.        inc  bx                     ; posun na prvni znak parametru
  25.        mov  dl,byte ptr es:[bx]    ; je-li znak mezera,tak jeste nejsem na datumu
  26.        cmp  dl,20h
  27.        je   mezery
  28.        sub  dl,30h                 ; Ord(znak v dl)
  29.        cmp  byte ptr es:[bx+1],'0' ; je-li nasledujici znak >= "0" pak mame den
  30.        jae  den2
  31. mesic:
  32.        mov  nden,dl                ; nyni mame v nden den
  33.        inc  bx
  34.        inc  bx                     ; posun na 1 znak mesice
  35.        mov  dh,byte ptr es:[bx]    ; do dh znak na pozici es:[bx]
  36.        sub  dh,30h                 ; Ord(znak v dh)
  37.        cmp  byte ptr es:[bx+1],'0' ; je-li nasledujici znak >= "0" pak mame mesic
  38.        jae  mesic2
  39. rok:
  40.        mov  nmesic,dh              ; nyni mame v nmesic mesic
  41.        inc  bx
  42.        inc  bx                     ; posun na 1 znak roku
  43.        and  word ptr es:[bx],0CFCFh
  44.        and  word ptr es:[bx+2],0CFCFh
  45.        mov  cl,byte ptr es:[bx]
  46.        xor  ch,ch
  47.        mov  bp,dx
  48.        mov  ax,3e8h
  49.        mul  cx                     ; * 1000
  50.        mov  cx,ax                  ; v cx nyni prvni cifra roku * 1000
  51.        mov  ax,64h
  52.        mul  byte ptr es:[bx+1]     ; * 100
  53.        add  cx,ax                  ; do cx nyni pridana 2. cifra roku * 100
  54.        mov  ax,0ah
  55.        mul  byte ptr es:[bx+2]     ; * 10
  56.        add  cx,ax                  ; do cx nyni pridana 3. cifra roku * 10
  57.        mov  al,byte ptr es:[bx+3]
  58.        xor  ah,ah
  59.        add  cx,ax                  ; a konecne i posledni cifra
  60.        mov  nrok,cx
  61.        mov  dx,bp
  62.        mov  ah,2bh                 ; nastavime systemove datum,
  63.        int  21h                    ; abychom zjistili den v tydnu
  64.        cmp  al,0ffh
  65.        jne  zjisti
  66.        jmp  errdat
  67. preved:                            ; at ten bordel vali
  68.        mov  al,'V'
  69.        call wr_char
  70.        mov  al,ndent
  71.        cmp  al,3
  72.        je   ve
  73.        cmp  al,4
  74.        je   ve
  75.        jmp  v
  76. den2:                              ; neprehledno, ale jump by nebyl near
  77.        mov  al,0ah
  78.        mul  dl                     ; * 10
  79.        mov  dl,al
  80.        mov  cl,byte ptr es:[bx+1]  ; do cl znak na pozici es:[bx+1]
  81.        sub  cl,30h                 ; Ord(znak v cl)
  82.        add  dl,cl                  ; 1. cifra * 10 + 2. cifra
  83.        inc  bx
  84.        jmp  mesic
  85. mesic2:
  86.        mov  al,0ah
  87.        mul  dh                     ; * 10
  88.        mov  dh,al
  89.        mov  cl,byte ptr es:[bx+1]  ; do cl znak na pozici es:[bx+1]
  90.        sub  cl,30h                 ; Ord(znak v cl)
  91.        add  dh,cl
  92.        inc  bx
  93.        jmp  rok
  94. zjisti:
  95.        dec  ah
  96.        int  21h                    ; zjistime den v tydnu
  97.        mov  byte ptr ndent,al      ; a ulozime ho do ndent
  98.        jmp  zpet
  99. ve:
  100.        mov  al,'e'
  101.        call wr_char
  102. v:
  103.        mov  al,' '
  104.        call wr_char
  105.        mov  al,ndent
  106.        cmp  al,6                   ; sobota
  107.        jl   d1
  108.        mov  si,offset sobo
  109.        jmp  den
  110. zpet:                              ; zase jeden bordel, ale zase kvuli jumpu
  111.        inc  ah
  112.        mov  dl,sden
  113.        mov  dh,smesic
  114.        mov  cx,srok
  115.        int  21h                    ; a dame systemove datum pekne nazpet
  116.        jmp  preved
  117. d1:
  118.        cmp  al,5                   ; patek
  119.        jl   d2
  120.        mov  si,offset pate
  121.        jmp  den
  122. d2:
  123.        cmp  al,4                   ; ctvrtek
  124.        jl   d3
  125.        mov  si,offset ctvr
  126.        jmp  den
  127. d3:
  128.        cmp  al,3                   ; streda
  129.        jl   d4
  130.        mov  si,offset stre
  131.        jmp  den
  132. d4:
  133.        cmp  al,2                   ; utery
  134.        jl   d5
  135.        mov  si,offset uter
  136.        jmp  den
  137. d5:
  138.        cmp  al,1                   ; pondeli
  139.        jl   d6
  140.        mov  si,offset pond
  141.        jmp  den
  142. d6:
  143.        mov  si,offset nede         ; nedele
  144. den:
  145.        xor  al,al
  146.        call wr_str
  147.        mov  al,' '
  148.        call wr_char
  149.        mov  dl,nden                ; v dl mame nas den
  150.        mov  al,dl
  151.        mov  dh,0ah
  152.        xor  ah,ah
  153.        div  dh                     ; / 10, v al jsou desitky dni
  154.                                    ; v ah zbytek dni
  155.        or   ax,3030h
  156.        cmp  al,30h                 ; byl-li den jednomistny piseme jen jednu cifru
  157.        je   pisden
  158.        call wr_char                ; vypis 1. znak dne
  159. pisden:
  160.        mov  al,ah
  161.        call wr_char                ; vypis 2. znaku dne
  162.        mov  al,'.'
  163.        call wr_char                ; vypise tecku
  164.        mov  al,' '
  165.        call wr_char                ; vypise tecku
  166.        mov  al,nmesic              ; v al mam nas mesic
  167.        cmp  al,0ch                 ; prosinec
  168.        jl   m1
  169.        mov  si,offset pros
  170.        jmp  mes
  171. m1:
  172.        cmp  al,0bh                 ; listopad
  173.        jl   m2
  174.        mov  si,offset list
  175.        jmp  mes
  176. m2:
  177.        cmp  al,0ah                 ; rijen
  178.        jl   m3
  179.        mov  si,offset rije
  180.        jmp  mes
  181. m3:
  182.        cmp  al,9                   ; zari
  183.        jl   m4
  184.        mov  si,offset zari
  185.        jmp  mes
  186. m4:
  187.        cmp  al,8                   ; srpen
  188.        jl   m5
  189.        mov  si,offset srpe
  190.        jmp  mes
  191. m5:
  192.        cmp  al,7                   ; cervenec
  193.        jl   m6
  194.        mov  si,offset cnec
  195.        jmp  mes
  196. m6:
  197.        cmp  al,6                   ; cerven
  198.        jl   m7
  199.        mov  si,offset cerv
  200.        jmp  mes
  201. m7:
  202.        cmp  al,5                   ; kveten
  203.        jl   m8
  204.        mov  si,offset kvet
  205.        jmp  mes
  206. m8:
  207.        cmp  al,4                   ; duben
  208.        jl   m9
  209.        mov  si,offset dube
  210.        jmp  mes
  211. m9:
  212.        cmp  al,3                   ; brezen
  213.        jl   m10
  214.        mov  si,offset brez
  215.        jmp  mes
  216. m10:
  217.        cmp  al,2                   ; unor
  218.        jl   m11
  219.        mov  si,offset unor
  220.        jmp  mes
  221. m11:
  222.        mov  si,offset lede         ; leden
  223. mes:
  224.        mov  al,[si]
  225.        xor  ah,ah
  226.        add  ax,si
  227.        push ax
  228.        xor  al,al
  229.        call wr_str                 ; vypise mesic
  230.        mov  al,20h
  231.        call wr_char                ; pridame mezeru
  232.        mov  ax,nrok                ; trosku zmatku, ale rok vypsat musim
  233.        mov  cx,64h
  234.        xor  dx,dx
  235.        div  cx                     ; / 100, ziskame 1. a 2. dve cifry
  236.        mov  es,dx                  ; do es 1. dve cifry
  237.        aam
  238.        xchg al,ah
  239.        or   ax,3030h
  240.        call wr_char
  241.        mov  al,ah
  242.        call wr_char                ; a konecne vypiseme
  243.        mov  ax,es
  244.        aam
  245.        xchg al,ah
  246.        or   ax,3030h
  247.        call wr_char
  248.        mov  al,ah
  249.        call wr_char                ; a konecne vypiseme zbytek
  250.        mov  al,0ch                
  251.        xor  ah,ah
  252.        mov  bl,nden
  253.        dec  bl
  254.        mul  bl                     ; v ax kolik pripocist k offsetu abych byl dobre
  255.        pop  si
  256.        inc  ax
  257.        add  si,ax
  258.        mov  al,byte ptr ds:[si]
  259.        cmp  al,20h
  260.        je   pis_nema               ; nema nikdo svatek
  261.        cmp  al,'*'                  
  262.        jne  pis_ma                
  263.        mov  si,word ptr ds:[si+10] ; nepis svatek, ale vyznamny den
  264.        jmp  short pis_info
  265. pis_ma:
  266.        push si
  267.        xor  al,al
  268.        mov  si,offset txt
  269.        call wr_str
  270.        pop  si
  271.        mov  bx,si
  272.        add  bx,0Bh
  273. rtrim:
  274.        cmp  byte ptr ds:[bx],' '
  275.        jne  tecku
  276.        dec  bx
  277.        jmp  short rtrim
  278. tecku:
  279.        sub  bx,si
  280.        xchg bx,ax
  281.        inc  ax
  282.        call wr_str
  283.        mov  al,'.'
  284.        call wr_char  
  285.        jmp  short pis_vse
  286. pis_nema:
  287.        mov  si,offset nema
  288. pis_info:
  289.        xor  al,al
  290.        call wr_str
  291. pis_vse:
  292.        call wr_line
  293.        int  20h
  294. errdat:
  295.        mov  si,offset error
  296.        xor  al,al
  297.        call wr_str
  298.        jmp  short pis_vse
  299.  
  300. sden   db 0
  301. smesic db 0
  302. srok   dw 0
  303. ndent  db 0
  304. nden   db 0
  305. nmesic db 0
  306. nrok   dw 0
  307. nema   db 19,' nemá nikdo svátek.'
  308. txt    db 11,' má svátek '
  309. error  db 69,13,'Chybn╪ zadané datum (má b∞t nap². 24.2.1994 nebo t²eba 24/06/1994) !'
  310.  
  311. nede   db 6,'ned╪li'
  312. pond   db 7,'pond╪lí'
  313. uter   db 5,'úter∞'
  314. stre   db 6,'st²edu'
  315. ctvr   db 7,'ƒtvrtek'
  316. pate   db 5,'pátek'
  317. sobo   db 6,'sobotu'
  318.  
  319. lede   db 5,'ledna'
  320.  
  321.        db '*         '   ; novy rok
  322.           dw offset dv_novy
  323.        db 'Karina      '
  324.        db 'Radmila     '
  325.        db 'Diana       '
  326.        db 'Dalimil     '
  327.        db '*         '   ; tri kralove
  328.           dw offset dv_trik
  329.        db 'Vilma       '
  330.        db '¼estmír     '
  331.        db 'Vladan      '
  332.        db 'B²etislav   '
  333.        db 'Bohdana     '
  334.        db 'Pravoslav   '
  335.        db 'Edita       '
  336.        db 'Radovan     '
  337.        db 'Alice       '
  338.        db 'Ctirad      '
  339.        db 'Drahoslav   '
  340.        db 'Vladislav   '
  341.        db 'Doubravka   '
  342.        db 'Ilona       '
  343.        db 'Bela        '
  344.        db 'Slavomír    '
  345.        db 'Zden╪k      '
  346.        db 'Milena      '
  347.        db 'Miloτ       '
  348.        db 'Zora        '
  349.        db 'Ingrid      '
  350.        db 'Ot∞lie      '
  351.        db 'Zdislava    '
  352.        db 'Robin       '
  353.        db 'Marika      '
  354.  
  355. unor   db 5,'února'
  356.  
  357.        db 'Hynek       '
  358.        db 'Nela        '
  359.        db 'Blaºej      '
  360.        db 'Jarmila     '
  361.        db 'Dobromila   '
  362.        db 'Vanda       '
  363.        db 'Veronika    '
  364.        db 'Milada      '
  365.        db 'Apolena     '
  366.        db 'Mojmír      '
  367.        db 'Boºena      '
  368.        db 'Slav╪na     '
  369.        db 'V╪nceslav   '
  370.        db 'Valent∞n    '
  371.        db 'Ji²ina      '
  372.        db 'Ljuba       '
  373.        db 'Miloslava   '
  374.        db 'Gizela      '
  375.        db 'Patrik      '
  376.        db 'Old²ich     '
  377.        db 'Lenka       '
  378.        db 'Petr        '
  379.        db 'Svatopluk   '
  380.        db 'Mat╪j       '
  381.        db '            '
  382.        db 'Dora        '
  383.        db 'Alexandr    '
  384.        db 'Lumír       '
  385.        db 'Albín       '
  386.  
  387. brez   db 6,'b²ezna'
  388.  
  389.        db 'Bed²ich     '
  390.        db 'Aneºka      '
  391.        db 'Kamil       '
  392.        db 'Stela       '
  393.        db 'Kazimír     '
  394.        db 'Miroslav    '
  395.        db 'Tomáτ       '
  396.        db 'Gabriela    '
  397.        db 'Frantiτka   '
  398.        db 'Viktorie    '
  399.        db 'And╪la      '
  400.        db 'Rehor       '
  401.        db 'Ràºena      '
  402.        db 'Matylda     '
  403.        db 'Ida         '
  404.        db 'Amos        '
  405.        db 'Vlastimil   '
  406.        db 'Eduard      '
  407.        db 'Josef       '
  408.        db 'Sv╪tlana    '
  409.        db 'Radek       '
  410.        db 'Leona       '
  411.        db 'Ivona       '
  412.        db 'Gabriel     '
  413.        db 'Marian      '
  414.        db 'Emanuel     '
  415.        db 'Dita        '
  416.        db 'Soσa        '
  417.        db 'Ta£ána      '
  418.        db 'Arnoτt      '
  419.        db 'Kvído       '
  420.  
  421. dube   db 5,'dubna'
  422.  
  423.        db 'Hugo        '
  424.        db 'Erika       '
  425.        db 'Richard     '
  426.        db 'Ivana       '
  427.        db 'Miroslava   '
  428.        db 'Vendula     '
  429.        db 'Herman      '
  430.        db 'Ema         '
  431.        db 'Duτan       '
  432.        db 'Darja       '
  433.        db 'Izabela     '
  434.        db 'Julius      '
  435.        db 'Aleτ        '
  436.        db 'Vincenc     '
  437.        db 'Anastázie   '
  438.        db 'Irena       '
  439.        db 'Rudolf      '
  440.        db 'Valerie     '
  441.        db '            '
  442.        db '            '
  443.        db 'Alexandra   '
  444.        db 'Evºenie     '
  445.        db 'Vojt╪ch     '
  446.        db 'Ji²í        '
  447.        db 'Marek       '
  448.        db 'Oto         '
  449.        db 'Jaroslav    '
  450.        db 'Vlastislav  '
  451.        db 'Robert      '
  452.        db 'Blahoslav   '
  453.  
  454. kvet   db 6,'kv╪tna'
  455.  
  456.        db '            '
  457.        db 'Zikmund     '
  458.        db 'Alexej      '
  459.        db 'Kv╪toslav   '
  460.        db '            '
  461.        db 'Radoslav    '
  462.        db 'Stanislav   '
  463.        db 'Ctibor      '
  464.        db '            '
  465.        db 'Blaºena     '
  466.        db 'Svatava     '
  467.        db 'Pankrác     '
  468.        db 'Servác      '
  469.        db 'Bonifác     '
  470.        db 'ªofie       '
  471.        db 'Premysl     '
  472.        db 'Aneta       '
  473.        db 'Nataτa      '
  474.        db 'Ivo         '
  475.        db 'Zbyτek      '
  476.        db 'Monika      '
  477.        db 'Emil        '
  478.        db 'Vladimír    '
  479.        db 'Jana        '
  480.        db 'Viola       '
  481.        db 'Filip       '
  482.        db 'Valdemar    '
  483.        db 'Vilém       '
  484.        db 'Maxim       '
  485.        db 'Ferdinand   '
  486.        db 'Kamila      '
  487.  
  488. cerv   db 6,'ƒervna'
  489.  
  490.        db 'Laura       '
  491.        db 'Jarmil      '
  492.        db 'Tamara      '
  493.        db 'Dalibor     '
  494.        db 'Dobroslav   '
  495.        db 'Norbert     '
  496.        db 'Iveta       '
  497.        db 'Medard      '
  498.        db 'Stanislava  '
  499.        db 'Gita        '
  500.        db 'Flora       '
  501.        db 'Antonie     '
  502.        db 'Antonín     '
  503.        db 'Vasil       '
  504.        db 'Vít         '
  505.        db 'Zbyn╪k      '
  506.        db 'Adolf       '
  507.        db 'Milan       '
  508.        db 'Leoτ        '
  509.        db 'Kv╪ta       '
  510.        db 'Alois       '
  511.        db 'Pavla       '
  512.        db 'Zdeσka      '
  513.        db 'Jan         '
  514.        db 'Ivan        '
  515.        db 'Adriana     '
  516.        db 'Ladislav    '
  517.        db 'Lubomír     '
  518.        db 'Petr a Pavel'
  519.        db 'µárka       '
  520.  
  521. cnec   db 8,'ƒervence'
  522.  
  523.        db 'Jaroslava   '
  524.        db 'Patricie    '
  525.        db 'Radomír     '
  526.        db 'Prokop      '
  527.        db 'Cyril       '
  528.        db '            '
  529.        db 'Bohuslava   '
  530.        db 'Nora        '
  531.        db 'Drahoslava  '
  532.        db 'Libuτe      '
  533.        db 'Olga        '
  534.        db 'Borek       '
  535.        db 'Markéta     '
  536.        db 'Karolína    '
  537.        db 'Jind²ich    '
  538.        db 'Luboτ       '
  539.        db 'Martina     '
  540.        db 'Drahomíra   '
  541.        db '¼enek       '
  542.        db 'Ilja        '
  543.        db 'Vít╪zslav   '
  544.        db 'Magdalena   '
  545.        db 'Libor       '
  546.        db 'Krist∞na    '
  547.        db 'Jakub       '
  548.        db 'Anna        '
  549.        db 'V╪roslav    '
  550.        db 'Viktor      '
  551.        db 'Marta       '
  552.        db 'Bo²ivoj     '
  553.        db 'Ignác       '
  554.  
  555. srpe   db 5,'srpna'
  556.  
  557.        db 'Oskar       '
  558.        db 'Gustav      '
  559.        db 'Miluτe      '
  560.        db 'Dominik     '
  561.        db 'Milivoj     '
  562.        db 'Old²iτka    '
  563.        db 'Lada        '
  564.        db 'Sob╪slav    '
  565.        db 'Roman       '
  566.        db 'Vav²inec    '
  567.        db 'Zuzana      '
  568.        db 'Klára       '
  569.        db 'Alena       '
  570.        db 'Alan        '
  571.        db 'Hana        '
  572.        db 'Jáchym      '
  573.        db 'Petra       '
  574.        db 'Helena      '
  575.        db 'Ludvík      '
  576.        db 'Bernard     '
  577.        db 'Johana      '
  578.        db 'Bohuslav    '
  579.        db 'Sandra      '
  580.        db 'Bartolom╪j  '
  581.        db 'Radim       '
  582.        db 'Lud╪k       '
  583.        db 'Otakar      '
  584.        db 'August∞n    '
  585.        db '            '
  586.        db 'µt╪pán      '
  587.        db 'Pavlína     '
  588.  
  589. zari   db 4,'zá²í'
  590.  
  591.        db 'Linda       '
  592.        db 'Adela       '
  593.        db 'Bronislav   '
  594.        db 'Jind²iska   '
  595.        db 'Boris       '
  596.        db 'Boleslav    '
  597.        db 'Regina      '
  598.        db 'Mariana     '
  599.        db 'Daniela     '
  600.        db 'Irma        '
  601.        db 'Denisa      '
  602.        db 'Marie       '
  603.        db 'Lubor       '
  604.        db 'Radka       '
  605.        db 'Jolana      '
  606.        db 'Ludmil      '
  607.        db 'Nadeºda     '
  608.        db 'Kryτtof     '
  609.        db 'Zita        '
  610.        db 'Oleg        '
  611.        db 'Matouτ      '
  612.        db 'Darina      '
  613.        db 'Berta       '
  614.        db 'Jaromír     '
  615.        db 'Zlata       '
  616.        db 'Andrea      '
  617.        db 'Jonas       '
  618.        db 'Václav      '
  619.        db 'Michal      '
  620.        db 'Jeron∞m     '
  621.  
  622. rije   db 5,'²íjna'
  623.  
  624.        db 'Igor        '
  625.        db 'Galina      '
  626.        db 'Bohumil     '
  627.        db 'Frantiτek   '
  628.        db 'Eliτka      '
  629.        db 'Hanus       '
  630.        db 'Sergej      '
  631.        db 'V╪ra        '
  632.        db 'µtefan      '
  633.        db 'Marina      '
  634.        db 'Andrej      '
  635.        db 'Marcel      '
  636.        db 'Renata      '
  637.        db '            '
  638.        db 'Tereza      '
  639.        db 'Havel       '
  640.        db 'Hedvika     '
  641.        db 'Lukáτ       '
  642.        db 'Michaela    '
  643.        db 'Vendelín    '
  644.        db 'Brigita     '
  645.        db 'Sabina      '
  646.        db 'Teodor      '
  647.        db 'Nina        '
  648.        db 'Beata       '
  649.        db 'Erik        '
  650.        db 'Zoja        '
  651.        db '            '
  652.        db 'Silvie      '
  653.        db 'Tadeáτ      '
  654.        db 'µt╪pánka    '
  655.  
  656. list   db 9,'listopadu'
  657.  
  658.        db 'Felix       '
  659.        db '            '
  660.        db 'Hubert      '
  661.        db 'Karel       '
  662.        db 'Miriam      '
  663.        db 'Libena      '
  664.        db '            '
  665.        db 'Bohumir     '
  666.        db 'Bohdan      '
  667.        db 'Evºen       '
  668.        db 'Martin      '
  669.        db 'Benedikt    '
  670.        db 'Tibor       '
  671.        db 'Sava        '
  672.        db 'Leopold     '
  673.        db 'Otmar       '
  674.        db 'Mahulena    '
  675.        db 'Romana      '
  676.        db 'Alºb╪ta     '
  677.        db 'Nikola      '
  678.        db 'Albert      '
  679.        db 'Cecílie     '
  680.        db 'Klement     '
  681.        db 'Emilie      '
  682.        db 'Kate²ina    '
  683.        db 'Artur       '
  684.        db 'Xénie       '
  685.        db 'René        '
  686.        db 'Zina        '
  687.        db 'Ond²ej      '
  688.  
  689. pros   db 8,'prosince'
  690.  
  691.        db 'Iva         '
  692.        db 'Blanka      '
  693.        db 'Svatoslav   '
  694.        db 'Barbora     '
  695.        db 'Jitka       '
  696.        db 'Mikuláτ     '
  697.        db 'Anbroz      '
  698.        db 'Kv╪toslava  '
  699.        db 'Vratislav   '
  700.        db 'Julie       '
  701.        db 'Dana        '
  702.        db 'Simona      '
  703.        db 'Lucie       '
  704.        db 'Lydie       '
  705.        db 'Radana      '
  706.        db 'Albina      '
  707.        db 'Daniel      '
  708.        db 'Miloslav    '
  709.        db 'Ester       '
  710.        db 'Dagmar      '
  711.        db 'Natálie     '
  712.        db 'Simon       '
  713.        db 'Vlasta      '
  714.        db 'Adam a Eva  '
  715.        db '*         '          ; 1.svatek vanocni
  716.           dw offset dv_1vano
  717.        db '*         '          ; 2.svatek vanocni
  718.           dw offset dv_2vano
  719.        db 'Zaneta      '
  720.        db 'Bohumila    '
  721.        db 'Judita      '
  722.        db 'David       '
  723.        db 'Silvestr    '
  724.  
  725. dv_novy   db 13,' je Nov∞ rok.'
  726. dv_trik   db 18,' jsou T²i králové.'
  727. dv_1vano  db 22,' je 1. svátek vánoƒní.'
  728. dv_2vano  db 22,' je 2. svátek vánoƒní.'
  729.  
  730. wr_char:
  731.   mov  di,col
  732.   mov  radka[di],al
  733.   inc  di
  734.   mov  col,di
  735.   retn
  736.  
  737. wr_str:
  738.   cld
  739.   or   al,al
  740.   jnz  wr01
  741.   lodsb
  742. wr01:  
  743.   xor  ah,ah
  744.   xchg ax,cx
  745. wr02:
  746.   lodsb
  747.   call wr_char
  748.   loop wr02
  749.   retn
  750.  
  751. wr_line:
  752.   mov  al,13
  753.   call wr_char
  754.   mov  al,10
  755.   call wr_char
  756.   mov  al,'$'
  757.   call wr_char
  758.   mov  ah,9
  759.   mov  dx,offset radka
  760.   int  21h
  761.   retn
  762.  
  763. col    dw 0
  764. radka  db 0
  765.  
  766. end start
  767.