Delphi veya Pascal ile TSR program yazılabilirmi ?

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Clipper
Üye
Mesajlar: 9
Kayıt: 18 Tem 2005 06:19

Delphi veya Pascal ile TSR program yazılabilirmi ?

Mesaj gönderen Clipper »

Merhaba

Delphi veya Pascal ile TSR ( Terminate And Stay Resident Program ) program nasıl yazabiliriz ? Bu konuda bana yardımcı olacak kaynak önerebilirmisiniz ? Öncelikle söyleyeyim assembler bilmiyorum. Yapmak istediğim işlem şu, örneğin klavyeden CTRL + L tuşuna basınca TSR program uyarılacak ve çalışmaya başlayacak ve sürekli bir loop içinde Z 1 2 3 tuşlarına basacak sonra 1 saniye bekleyecek. Ben klavyeden tekrar CTRL + L tuşuna basınca duracak. Böyle bir program yazmak istiyorum. Ama nerden başlasam hiç bilmiyorum. Bu konuda bilgisi olan arkadaşların yardımlarını bekliyorum.

Bu konuda bildiğiniz sağlam bir kaynak ( özelikle türkçe olursa süper olur )
önerirseniz memnun olurum.

Görüşmek Dileğiyle
Clipper
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Mesaj gönderen fduman »

TSR programlar DOS zamanında kaldı. Multitasking yapamayan DOS'a bu yeteneği bir bakıma kazandırmak için yapılmışlardı.

Delphi ile DOS TSR uygulamaları yapamazsın. Ancak Turbo Pascal veya Borland Pascal ile yapabilirsin. Bu uygulamaların Windows XP gibi bir işletim sisteminde sağlıklı çalışacağını zannetmiyorum.

Bunu ne için istediğini belirtirsen daha fazla yardımcı olmaya çalışayım.
mbt
Üye
Mesajlar: 165
Kayıt: 27 Şub 2004 01:23

Mesaj gönderen mbt »

Coderlord+1
ek olarak dediği gibi
Pascalda yazılır. Çokişlemlilik özelliği olmayan dos'ta bu tekniğe başvurulurdu. Delphi de bunun karşılığı "Timer" nesnesini kullanmanızdır.


Pascal'da eğer TSR türü programlar yazacaksanız keep komutunu ve kesmeleri (interrupt) araştırın.
Mesela saat kesmesi $1c olsa gerekti. Klavye kesmesi $9c olması lazım. (unutmadıysam 10 yıl önceki bilgilerim)

Bunun haricinde
getintvec
setintvec
swapvectors
gibi komutlar kullanılıyordu.

google'da keep+pascal veya keep+tsr+pascal diye arattırın.
Kullanıcı avatarı
undefined
Moderator
Mesajlar: 565
Kayıt: 06 Eki 2003 12:01
Konum: Bursa
İletişim:

Mesaj gönderen undefined »

Ben programlamaya ilk başladığı dönem dosun can çekişte dönemdi. İşin içine iyice girdiğimde dos tabuttaydı :D Hayal meyal hatırladığıma göre Bu TSR olayı programı özel bir kesmeyle sonlandırarak yapılıyordu.

Devir multitasking dönemi @coderlord un bahsettiği gibi, onun için sorununuzu açarsanız bu dönemin sunduğu imkanlarla düşünerek çözüme ulaşabiliriz.
aLonE CoDeR
Kıdemli Üye
Mesajlar: 1223
Kayıt: 26 Nis 2005 04:08

Mesaj gönderen aLonE CoDeR »

Turbo Pascal 7.0 Gürcan Banger..Örnek TSR kodlarıyla birlikte harkulâde bir anlatım bulabilirsin (lakin kitabı bulabilir misin onu bilemiyorum :roll: )..

Kolay gele..
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

bLue aLonE yazdı:Turbo Pascal 7.0 Gürcan Banger..Örnek TSR kodlarıyla birlikte harkulâde bir anlatım bulabilirsin (lakin kitabı bulabilir misin onu bilemiyorum :roll: )..

Kolay gele..
Vay Gürcan abim be :wink: Tam tamına 20 sene önce Eskişehir'de Esnaf Sarayındaki dükkanında yanında çıraklığa başladıydım. Onun geçmişi daha da eski kendisi elektrik mühendisi.. :? Bu vesile ile irtibata geçme şansı verdiğin için ayrıca teşekkür ederim.. Gürcan Banger'i google babaya sordum o da http://www.gurcanbanger.com sana her şeyi anlatır dedi.. :wink:
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
Clipper
Üye
Mesajlar: 9
Kayıt: 18 Tem 2005 06:19

Mesaj gönderen Clipper »

Cevaplarınız için teşekkürler. Benim amacım , oğlumun oynadığı bir oyun var onun için macro yazmak isteiştim. Oyunda sürekli saldırı yapması için Z 1 2 ve 3 tuşlarına seri olarak sürekli basması gerekiyor. Bu işlemi bir TSR program ile Win XP altında çalıştırabiliriz diye düşünmüştüm. Bu konuda yardımcı olacak başka fikri olan varsa TSR dışında da olabilir çok memnun olacağım.
MuzAn
Üye
Mesajlar: 18
Kayıt: 22 Nis 2006 09:26
İletişim:

Mesaj gönderen MuzAn »

Clipper yazdı:bir oyun var onun için macro yazmak isteiştim. Oyunda sürekli saldırı yapması için Z 1 2 ve 3 tuşlarına seri olarak sürekli basması gerekiyor.
TSR'ye gerek yok. Zaten Win32'de bu pek anlam ifade etmiyor.

Bunun yerine, Isletim Sistemine klavyeden gemis gibi bilgiler gondermniz lazim. Bugune kadar boyle bir sey bana hic gerekmedi ama cok da zor degil.

Delphi'de bunu yapabilirsiniz, once sunu okumaniz lazim.
http://msdn.microsoft.com/library/en-us ... frame=true

Bunu da okumanizda fayda var :
http://www.mcse.ms/archive61-2004-9-1081381.html

Boylece ogluna hile yapmagi ogretmek bir yana ona bunun icin bir de program yazmis nadir babalardan birisi olacaksiniz. Sizin bileceginiz bir seydir tabii ki :?

Adem
Clipper
Üye
Mesajlar: 9
Kayıt: 18 Tem 2005 06:19

Mesaj gönderen Clipper »

MuzAn yazdı: Boylece ogluna hile yapmagi ogretmek bir yana ona bunun icin bir de program yazmis nadir babalardan birisi olacaksiniz. Sizin bileceginiz bir seydir tabii ki :?

Adem
Aslında ben bu açıdan hiç düşünmemiştim.Ben oğlum oyunu bir an önce bitirsin de aklı oyunda kalmasın diye düşünmüştüm. Beni uyardığınız için ve yardımlarınız için tekrar teşekkür ederim. Ama ben gene de meraktan bu programı yapmaya çalışacağım ama oğluma oynatmayacağım. Zaten programı yazmak benim için biraz zor olacak çünkü yaklaşık 5-6 yıldır profesyonel anlamda delphi ile program yazmıyorum. Bir çok bilgiyi unuttum. Ama hobi olarak da olsa boş vakitlerimde birşeyler yapmaya çalışıyorum.

Yardımcı olmaya çalışan herkese tekrar teşekkür ederim
Clip
Cevapla