BASIC programınızı disketten altprogram çağırır hale getirin. Eğer hız programcıların en baş sorunuysa, bellek haemi de hemen iİkinci baş sorundur. 3. sayımızda Ömer Erkmen, ©uick Basic'le hız sorununun nasıl hafifletilebileceğir-i anlatmıştı. Bu yazımızda GW-BASİC'le ilgili olarak tanıttığımız yöntem hem hız hem bellek hacmi konularında büyük kolaylıklar sağlar. GW- BASIC'de alterogram Subroufine) lakviyeleri Mike Carmichael'dan Çeviren Emin TANRIYAR -— comrmodore 34 Kopscmlı bir BASIC program geliş- tirirken bellek tükenmesi gibi bir olayla karşılaştıysanız, büyük bir ihtimalle kendi kendinize şöyle demişsinizdir: “Ah keşke bütün alt programları (sub- routinleri) diskte kaydedebilseydim ve ihtiyacım oldukça birer birer çağırıp kullanabilseydim”. Şüphesiz global değişkenleri sürdür- mek ve program modülleri arasında bir yol açabilmek için COMMON ve CHAİN komutlarını kullanabilirsiniz, ama Microsoft'un GW-BASİC'i prog- ramcının bir dizi alt programın ana programa bağlanmasına (1 ink) izin vermez. Ama yine de GW-BASIC'in bu sınırlılığını aşarak disketten yan prog- ram çağrılabilmesini mümkün kılan RAMDISK'de aslında fikir oldukça ba- sittir; RAM'ın belli bir bölümü altprog- ramlara ayrılır ve gerektikçe disketteki alterogramlar bu özel bölüme yükle- nir. Hemen bir uyarı: GW-BASIC'te ana programa bitişik bellek bölgesi içine bir yan program yüklemeye çalışırsa- nız programın hemen üstünde hafıza- da bulunan interpreterin çalışma sa- hasını tahrip edersiniz ve program çö- ker. Bu sorunun üstesinden şöyle gelebi- liriz: Ara program altprogramlar için, içinde belirli bir miktar RAM ayıran yo- rum (REM) cümleleriyle takviye edilir (Örneğin benim örnek programımda- ki REM'ler yaklaşık 1000 byte yer kap- liyor). Ama daha fazla ya da az REM cümlesi kullanarak ana programınızın