Sinclair Basic
Sinclair BASIC, Sinclair Research Ltd tarafından Nine Tiles Networks Ltd.'ye yazdırılmış olan bir BASIC lehçesidir.
Tarihçe
Sinclair Basic, Sinclair ZX80 tipi mikrobilgisayarın 4Kb'lık sistem ROM'u için 1979'da yazılmıştır.
İlk yazıldığında ANSI (Standard) BASIC'in sadeleştirilmiş bir uygulaması iken, Sinclair ZX81 modeli satışa çıktığında 8KB'lık ROM alanına göre geliştirilmiş ve Sinclair ZX Spectrum modeli ile 16KB'lık son haline ulaşmıştır.
Sinclair Zx Spectrum 128k modeli geliştirildiğinde ROM alanının 32KB'a çıkmasıyla Sinclair Basic geliştirme arayüzü modernize edilmiştir. Sanal bir disk alanı olarak Ramdisk basic ile birlikte aktif halde gelmektedir. Ramdisk 80KB veri tutabilmektedir ve HARD reset atılana kadar içeriğini korumaktadır. Bu sırada Sinclair Basic'e 128kb ramdisk kullanabilmek için LOAD! ile SAVE!, AY çipini kullanarak ses üretmek için PLAY ve eski editörü kullanabilmek için SPECTRUM komutu eklenmiştir. Bu arabirime 128 Basic denmektedir.
Sinclair Zx Spectrum +3 modeli ile ROM 32KB'dan 64kb'a çıkarılmıştır. Ekstra 32kb'ın büyük bir kısmı Amstrad bilgisayarlarda kullanılmış olan PCWDOS'dan devşirilmiş, +3DOS diye adlandırılan disk işletim sistemine ayrılmıştır. +3DOS'un eklenmesi ile basic kütüphanesine zaten ekli bulan dosya erişim komutlarına (LOAD, SAVE, CAT vb.) teyp (t:) , ramdisk (m:) ya da disk sürücüsü (a:/b:) seçebilme yeteneği getirilmiştir. Artık "m:" seçeneği olduğundan, Bir önceki sürümdeki LOAD! ve SAVE! bu sürümden çıkarılmıştır. Dosyalama komutlarının geliştirildiği bu sürüme +3 Basic denmektedir.
Basitliği ile kolay öğrenilen, sözdizim yardımı ile yazım sırasında hata yapmayı engelleyen bu basic lehçesi günümüzde modern bilgisayarların yanında farklı platformlardaki 8bit bilgisayarlarda da kullanılabilmektedir.
Komut Kümesi
Komutlar
BEEP, BIN, BORDER, BRIGHT, CAT,CIRCLE, CLEAR, CLOSE#,CLS, CONTINUE, COPY, DATA, DEF FN, DIM, DRAW, ERASE, FLASH, FORMAT, FOR,GO SUB, GO TO, IF, INK, INPUT, INVERSE, LET, LIST, LLIST, LOAD, LPRINT, MERGE, MOVE, NEW, NEXT, OPEN#, OUT, OVER, PAPER,PAUSE, PLOT, POKE, PRINT, RANDOMIZE, READ, REM, RESTORE, RETURN, RUN, SAVE, VERIFY
Fonksiyonlar
ABS, ACS, AND, ASN, ATN, ATTR, CHR$,CODE, COS, EXP, FN, INKEY$, INT, IN, LEN, LN, NOT, OR, PEEK, PI, POINT, RND, SCREEN$, SGN, SIN, SQR, STR$, TAN, TO, USR, VAL$, VAL,
Bağlaçlar
AT, LINE, STEP, TAB, THEN
Kullanıcı arabirimi ile ilgili problemler

Sinclair Basic diğer bilgisayar kullanıcıları tarafından sıradışı yazım tekniği sebebiyle sürekli olarak eleştirilmiştir. Sinclair Basic'in 48k modellerde bulunan arayüzü tek tuş giriş sistemi ile tasarlanmıştır. Buna göre bir komutu yazmak için o komuta ait tuşa basmak yeterlidir.
Elbetteki bu durum tüm komutların yerinin öğrenilmesini gerektirmektedir. Bu durum programlamayı zorlaştırıyor gibi görünmesine karşın, bazı avantajlar sağlamaktadır. Tüm komutların klavye üzerinde basılı olması sayesinde kullanıcılar daima komutları görmekte ve yapmayı amaçladıkları işlemle alakalı hangi komutların bulunduğunu bir dökümana ihtiyaç duymadan kolayca bulmaktadır.
İlgili tuşa basıldığı anda tüm komutun otomatik yazılması sağlandığı için yazım hatalarını tamamen elimine etmesi, sözdizim hatalarını azaltması mümkün olmaktadır. Sinclair basic'de bulunan sözdizim yardımcısı, komut girildiğinde sonraki parametrenin bir string, rakam ya da bir başka komut olması gerektiğini göstermektedir, yine de bir hata yapılırsa, hataların sözdizimin hangi noktasına olduğunu da gösterebilmektedir. Bütün bunlar sayesinde birçok Sinclair kullanıcısı BASIC programlama dilini öğrenebilmiştir. Tek tuşla yapılan giriş yöntemi anında tokenize edildiği için RAM kullanımında da ciddi tasarruflar sağlamaktadır.
Bu durum 128 modeliyle birlikte gelen yeni arayüz ile değişmiştir. 128k Zx Spectrumlarda komutları düz yazı şeklinde yazabileceğiniz gibi, SPECTRUM komutunu kullanarak eski tek tuş giriş sistemine geri dönebilirsiniz. Sinclair Amstrad tarafından satın alındıktan sonra üretilen +2 ve +3 modellerin klavyelerinde sinclair basic komutları basılmamıştır.