Commodore sayı 57, sayfa 25
Sayfanın metni

Sayfa 25

Görüldüğü gibi bir application'ı terkedip Desktop'a geri dönmek (64'ünüzü kilitlemeden tabii ki) tek komutla halledilebiliyor. Bu komutu verdiğiniz zaman GEOS bütün işlemlerini keser ve DESKTOP programını yüklemeye başlar. Eğer diskinizde bu programı bulamazsa bir pencere açarak sizden içinde Desktop olan bir disk koymanızı isteyecektir.

Testmenü m.byte 10 .byte 24 .word 0 .word 125 .byte 2 İkinci ekranın menülerinin tanım tablosunu da bura- da yaratıyoruz. Bu tablonun ilk iki byte'ıyla menünün üst ve alt kenarlarının y koordinatını 10 ve 24 olarak ayar- lıyoruz. Sonraki dört byte'la da menünün sol ve sağ ke- narlarını O ile 125 olarak ayarlıyoruz. Son byte'imız olan 2 ise menünün yatay bir menü olduğunu ve 2 elemanı bu- lunduğunu belirtiyor.

Word textil .byte $80 .word altmenül ikinci menü elemanının tanımı

Menümüzün ilk seçeneğini bu byte'larla tanımlıyoruz. 1. ve 2. byte'larda bu elemanın içine yazılacak olan yazının saklandığı adresi belirtiyoruz. 3. byte'la bu seçeneğin bir alt-menüyü açacağını belirtiyoruz. 4. ve 5. byte'lar ise bu eleman seçilirse açılacak alt menünün adresini taşıyor.

textil .text “ana menu 1” .byte 0

.... ikinci elemanın yazı dataları

Ana menünün seçeneklerinin içinde yazılacak olanlar yukarıdaki gibi tablolarda hazırlanır. Her seçeneğin yazısının sonuna $00 byte'ını koyarak yazının bittiğini belirtmeliyiz.

altmenül — .byte 24 .byte 24-4-(8*14) 41 .word 0 .word 80

.byte $80 4 $08

Bir alt menünün tanım tablosu da ana menülerin tanım tablosunun aynısıdır. Yani bu alt menünün üst kenarı 24., alt kenarı 137. y koordinatlarında; sol kenarı 0., sağ kenarı 80. x koordinatlarında bulunuyor ve menümüz sekiz elemanlı bir dikey menü olarak ayarlanıyor.

Gin ADAM

NX he » a ha

AAA YAZ

»N

altltexti .byte 0 .word menülservisi 7 elemanın daha tanımları

Tabii ki alt menünün elemanları da tanımlanmalıdır. Burada her elemanın yazılarının adreslerini veriyoruz. Elemanların bir rutini çağıracağını belirtiyoruz ve bu rutinin adresini ekliyoruz.

altmenü2 — .byte 24 .byte 244 (7*14) 41 70 .Wword 155 .byte $80 -- $40 4 $07 eleman tanımları

Bu menü tanım tablosunu yazmamın tek sebebi dikkatinizi menü tipine çekebilmekti. Gördüğünüz gibi bu yalnızca dikey değil aynı zamanda sınırlandırılmış bir menü. Sınırlandırılmış menünün ne olduğunu görmek için örnek programın 2. ekranında “ana menü 2” seçeneğini seçmeniz yeterlidir.

altltextl — .text “seçenek 1” .byte 0 diğer yazı dataları

Bütün menü elemanlarının yazıları bu tabloyla ayarlanıyor.

menüservisi Jsr GotoFirstMenu Rts

Gördüğünüz gibi alt menü seçenekleri de hiçbir işlem yapmıyorlar ve doğrudan doğruya ilk menüye dönüyorlar. (Bu işlemi yapmanız için GotoFirstMenu rutinine sıçramanız ve RTS ile kontrolü tekrar Kernal'a bırakmanız gereklidir.)

.byte 0,0,0,0

Burada bırakılacak fazladan birkaç sıfır, programını- zın GEOS formatına çevrilmesi sırasında olabilecek bir byte kaybını kapatmak içindir. Mesela yayınlamış oldu- ğumuz GEOS CONVERTER programı, GEOS forma- tına çevirdiği programların son byte'ını çevirdiği prog- rama yazmıyor. Bunu kesinlikle unutmayın. Bu programın MDE çıktısını program döküm eki'nde bulabilirsiniz.

Evet GEOS'çular, bu aylık da bu kadar. Gelecek ay kursumuza “GEOS'ta çizim ve grafik” konusuyla devam edeceğiz. Şimdilik hepiniz hoşça kalın.

Klavyeyle gezinmek için ← ve → tuşları.