zaman RECORD komutundan son- ra kayıt sırasında doldurması için bir adres aralığı vermeniz gerekiyor. Bu- nun kullanımı ise şöyle: RECORD FROM başl.adr. TO bit.adr.SPEED x Burada başlangıç adresi ve bitiş ad- resi HİMEM değerinden büyük ol- malı ve tabil ki bitiş, başlangıçtan ile- ride olmalı. En son parametre x ise O'dan büyük olması dışında sınırla- maya tâbi değil. Örneklenmiş sesin geri verilmesi PLAY (ya da F3 tuşu) komutu ile yapılıyor. Buna ait para- metrelerin kullanımı ise RECORD komutundakilerin aynı. Detaylara daha ileride değineceğiz. DİSKET İŞLEMLERİ Demin de belirttiğimiz gibi, Speech-Basic her iki ROM'un altın- n daki RAM'i oldukça yoğun bir bi- çimde kullanıyor. Ortaya ufak bir so- run çıkıyor tabil ki. İşletim sistemin- deki standart LOAD ve SAVE rutin- leri bu bölgeler için kullanğğ Bu yüzden sözkonusu rutinl re daha yazılmış durumda. Yeni ko- mutlarımızın adları BLOADTE BSA- | VE ve sadece RAM'e hitap ediyorlar. Her iki emir sadece disket işlemleri için kullanılıyor. Zaten başka bir tür- lüsü de saçma olurdu! Düşünün bir kere, GÜ KByte'ı tek parça olarak ka- sete saklamışsınız. Ses bilgileri için ayrılmış hafıza bölgesini tümüyle dis- kete saklamak için sadece “BSA- VE*'isim'” demeniz yeterli. Bu ko- mutu tüm parametreleri ile görmek istersek: BSAVE-"isim'',sürücü no.su FROM başl.adr. TO bit.adr. En sondan başlayarak, başa doğ- ru tüm parametreler istenilse verilme- yebilir. Böyle bir durumda o para- metre için bilinen belli bir değer kul- lanılır. BLOAD komutunun parametreleri ile birlikte kullanımı BSA VE komu- tu ile aynı. Burada kullanılan adres, disketten alınan bilginin hangi adres- lerin arasına gideceğini belirtir. Bitiş adresi bir sınırı temsil eder ve yükle- me sırasında hiçbir türlü aşılmaz. Mesela, yüklenen dosya, belirtilen aralıktan daha büyükse, dosyanın ge- ri kalan kısmı dikkate alınmaz ve yükleme işlemi orada kesilir. Böyle- ce, yükleme işlemi üzerinde de kesin bir kontrol elde edilir. Bunlardan başka, Speech-Basic her türlü disket işlemini rahat olarak ger- çekleştirebilmeniz için DISK ve DIR gibi komutlar da sunmakta. Bunlar- dan ilki, disket sürücüsüne emir gön- dermek için, diğeri de disketin içeri- ğini görmek için kullanılıyor. SINIRLANMIŞ ÖRNEKLER, BLOK TABLOSU Speech-Basic'te her bir kelimeyi, cümleyi veya istediğiniz ses bölgele- rini bulup, izole etmek oldukça ko- laydır. Bunun için, örneklenmiş sesi iki kere dinleyip, birinde kelimenin başında, diğerinde ise sonunda (RES- TORE) tuşlarına basıp, başlangıç ve sonuç adreslerini belirlemek gereki- yor. ((RESTORE)'a basıldığında din- leme işlemi kesiliyor ve kesilme ad- resi belirtiliyordu.) Kelimenin bulun- duğu bölgeyi belirledikten sonra, bu bölgeyi, FROM başl.adr. TO bit.adr. Commodore komutunu vererek dinleyebilirsiniz. Burada, başlangıç ve bitiş adresleri- ni biraz değiştirerek birkaç kere da- ha dinleyin. En sonunda, istediğiniz ses bölümünü kesin olarak elde edin. Şimdi elde ettiğiniz sayıları pratikte nasıl kullanacaksınız? Bunları bir ke- nara mı not etmek lazım? Hayır! Böyle bir kullanım için, ses blokları- ni bilgisayardan aklında tutmasını is- teyebiliriz. Speech-Basic'te bu tip blokların başlangıcını ve bitişini ak- lında tutabilmesi için aynı isimle anı- lan bir komutu mevcut. Bunun kul- lanımı ise: BLOCKEx (FROM başl.adr. (TO BİT.adr.)) (string) Burada, başlangıç ve bitiş adresle- rini demin belirlemiştik. String ise, 8 karakterden oluşan ve bu bloğu ta- nımlayan kısa bir açıklama. Blok nu- marasını belirleyen x'ise | ile 31 ara- sında bir sayı olabilir. 30 numaralı blok için daha evvelden, fonksiyon tuşlarının tanımlandığı bölgenin ad- resi ile belirlenmiş durumda. 31 nu- maralı blok için ise blok tanımlama tablosunun başlangıç ve sonuç adre- si tanımlarımış durumda. Sıfır numa- ralı blok, gerçekte varolmasına rağ- men, kullanıcı tarafından değiştirile- miyor. Bunun görevi, en son BLO- AD işleminin başlangıç ve bitiş adre- sini akılda tutmak. FROM başl.adr. TO bit.adr. para- metrelerini gerektiren bir yerde, bu- nun yerine belirlenmiş bir blok böl- gesini kullanabiliriz. Bunun için söz- konusu parametreleri BLOCKx gibi 3 bir kullanımla özetleyebiliriz. Speech- Basic başlangıç ve bitiş adreslerini otomatik olarak blok tanımlamasın- dan alır ve kullanır. Bu kullanım, PLAY, RECORD, BLOAD, BSA- VE, MON ve BLOCK komutunun kendisinde geçerlidir. Mesela, buna göre şöyle bir satır yanlış olmaz: BLOCK 1 BLOCK 0 “Merhaba” Böylece, yeni yüklenmiş olan, “Merhaba”' adlı ses örneğini BLOCK Ve saklar ve BLOCK O'ın içeriğini başka bir yerde saklayarak daha son- raki işlemler için kullanılmak üzere serbest hale getiririz. Gene benzer şe- kilde: BSAVE*f-tuşları”',& BLOCK 30 kullanım olarak hatalı değildir ve 57