11.07.2015 Views

Amiga Dunyasi - Sayi 23 (Nisan 1992).pdf - Retro Dergi

Amiga Dunyasi - Sayi 23 (Nisan 1992).pdf - Retro Dergi

Amiga Dunyasi - Sayi 23 (Nisan 1992).pdf - Retro Dergi

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

DERLEYİCİLERDEJBEGINNINGM kullanırsanız, file'ınbaşına erişebilirsiniz.Seek fonksiyonunda file pozisyon ofseti,file uzunluğunu aşacak konuma gelmişseDOS üzerinden Seek Error mesajı gönderilir.Bu mesajı algılamak için Seek'ingeri verdiği değeri kontrol etmeniz gerekmekte.Bu değer -1 ise IOErr fonksiyonunukullanarak hatanın ne olduğunu öğrenebilirsiniz.DateStampBu fonksiyon, sistem saati ayarlanmışsa,saatin o anki içeriğini bize bildirir.Fonksiyonu çağırmak için 3 longword'lukboş bir alanın başlangıç adresini diregister'ine vermeliyiz. Fonksiyon DOSlibrary'sinde ve çağırmak için kullanacağımızofset de -192 (=-$c0). Fonksiyonuçağırdıktan sonra boş olan 3 longword, tarihve saati bildirir. Ilk longword, 1 Ocak1978 tarihinden itibaren geçen gün adedinibize verir. İkinci longword ise saat00:00'dan itibaren geçen dakika adediniverir. Son longword ise en son dakika artırımındansonraki clock adedini bize verir.Bu değeri de 50'ye böldüğümüzde saniyeyiöğrenmiş oluruz. Aşağıdaki ufak rutinbize tarih ve saati alışık olduğumuz biçimdeverir.GETCLOCK:move.l DOSBASE,a6move.l #ADRES,d1jsr -192(a6)lea ADRES.a0move.I 0(a0),d0divu #365,d0move.I d0,d1swap d1and.I #$ffff,d0and.I #$1ff,d1move.I d0,d2divu #4,d2move.I d2,d3swap d3and.land.I#$ffff,d2#7,d3sub.l d2,d1add.I #1978,d0move.l d0,YILmove.Iclr.l#-1 ,d5d6lea AYTABLE.a1AYLOOP:add.l #1 ,d5add.lcmp.l(a1,d5),d6d1,d6bgt AYLOOPsub.l #1,d5move.l d5,AYsub.l (a1,d5),d6sub.l d6,d1move.l dl.GUNmove.l 4(a0),d0divu #60,d0move.lswapand.land.lmove.lmove.lmove.ldivumove.lrtsADRES:del 0,0,0SANİYE:del 0DAKİKA:delSAAT:0delGUN:0delAY:0delYIL:0del 0d0,d1d1#$1f,d0#$3f,d1d0.SAATd1, DAKİKA8(a0),d0#50,d0d0.SANIYEEh, bu aylık da ne yazık ki yerim doldu.Fakat bir hayli teorik ve pratik bilgi kapmışolduğunuzu umarım. Pratiğinizi geliştirmekiçin verdiğim tüm fonksiyonlarlailgili ufak tefek örnekler yapmanız faydalıolur. Hoşçakalın...AMIGA DÜNYASI 45

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!