Ini ialah perintah zmakebas yang boleh dijalankan dalam penyedia pengehosan percuma OnWorks menggunakan salah satu daripada berbilang stesen kerja dalam talian percuma kami seperti Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS.
JADUAL:
NAMA
zmakebas - menukar fail teks ke dalam program Spectrum Basic
SINOPSIS
zmakebas [-hlr] [-a garis permulaan] [-i incr] [-n speccy_filename] [-o fail keluaran] [-s selaras]
[input_file]
DESCRIPTION
zmakebas menukar atur cara Asas Spektrum yang ditulis sebagai fail teks kepada spesifikasi sebenar
Fail asas (sebagai fail .TAP, atau secara pilihan fail tanpa tajuk mentah). Secara lalai, input datang
daripada stdin, dan output pergi ke `out.tap'.
Menggunakan zmakebas dan bukannya (katakan) menulis Asas dalam emulator bermakna anda boleh menulis
menggunakan editor yang lebih bagus, dan boleh menggunakan alatan yang berfungsi pada fail teks, dsb. Juga, dengan `-l'
pilihan yang anda boleh tulis tanpa nombor baris, menggunakan label di tempatnya jika perlu.
Program ini pada asalnya bertujuan untuk digunakan semata-mata untuk membuat program pemuat kecil, jadi
mereka tidak perlu menjadi binari tanpa sumber. Walau bagaimanapun, saya telah melakukan usaha yang cukup
untuk memastikan ia berfungsi untuk program yang lebih besar dan lebih serius juga, jadi anda juga boleh menggunakannya untuk
benda macam tu.
PILIHAN
-a jadikan fail yang dijana auto-mula dari baris garis permulaan. Jika `-l' dinyatakan,
ini boleh menjadi label, tetapi jangan lupa untuk menyertakan awalan `@' untuk menunjukkan perkara ini.
-h memberi bantuan pada pilihan baris arahan.
-i dalam mod label, tetapkan kenaikan nombor baris (lalai 2).
-l gunakan label dan bukannya nombor baris.
-n tentukan nama fail untuk digunakan dalam fail .TAP (sehingga 10 aksara), iaitu nama fail speccy
akan lihat. Lalai ialah nama fail kosong (10 ruang).
-o output kepada fail keluaran dan bukannya `keluar.ketik' lalai. Gunakan `-' sebagai nama fail untuk
output pada stdout.
-r tulis fail Asas tanpa pengepala mentah, bukannya fail .TAP lalai.
-s dalam mod label, tetapkan nombor baris permulaan (lalai 10).
INPUT FORMAT
Input mestilah sama seperti yang anda taipkan ke dalam speccy (a 128, tepatnya), dengan
pengecualian berikut:
Baris yang bermula dengan `#' diabaikan. Ini membolehkan anda memasukkan komen yang tidak
disalin ke dalam fail Asas output.
Garis kosong diabaikan.
Kes diabaikan dalam kata kunci - `print', `PRINT' dan `pRiNt' adalah setara.
Anda boleh menggunakan `randomise' sebagai alternatif kepada `randomize'.
Anda boleh mendapatkan nombor hex dengan menggunakan `bin' dengan nombor hex gaya C, cth untuk mendapatkan 1234j yang anda akan
gunakan `bin 0x1234'. (Namun, ia muncul dalam bentuk itu dalam penyenaraian speccy, jadi jangan
gunakannya jika anda mahu dapat mengedit program output pada speccy.)
Anda boleh mendapatkan tanda paun (watak 96 pada speccy) dengan menggunakan petikan belakang (`).
Satu baris input biasanya sama dengan satu baris Asas, tetapi anda boleh menggunakan garisan serong ke belakang sebagai yang terakhir
watak baris untuk meneruskan penyataan pada baris input seterusnya.
Daripada memasukkan aksara grafik blok dan UDG secara literal seperti yang anda lakukan pada a
speccy, anda harus menggunakan urutan melarikan diri. Ini bermula dengan garis miring ke belakang (`\'). Untuk mendapatkan a
UDG, ikut garisan belakang ini dengan huruf UDG, dalam julat `a' hingga `u' (`t' dan `u'
hanya akan mempunyai kesan yang diingini jika program dijalankan pada speccy 48k atau dalam mod 48k,
walaupun); kedua-dua kerja huruf besar dan kecil. Untuk mendapatkan simbol hak cipta, ikuti dengan `*'.
Untuk mendapatkan watak grafik blok, ikutinya dengan `lukisan' dua aksara menggunakannya
ruang, titik, apostrof dan/atau titik bertindih. (Sebagai contoh, anda akan mendapat aksara 135 dengan `\':',
dan aksara 142 dengan `\:.'.) Untuk mendapatkan `@' literal, ikuti dengan `@'. (Ini diperlukan
hanya jika pilihan `-l' diberikan, tetapi berfungsi sama ada ia atau tidak.) Untuk menentukan literal
kod aksara lapan bit untuk dibuang ke dalam fail output Asas secara langsung (untuk digunakan untuk embedded
kod kawalan warna dan seumpamanya), gunakan pendakap dan nombor sintaks C contohnya `\{42}' untuk
perpuluhan dan `\{0x42}' untuk heks. Akhirnya, seperti biasa dengan perkara sedemikian, anda boleh mendapatkan literal
sengkang terbalik dengan mengikuti sengkang terbalik pertama dengan yang lain.
Jika pilihan `-l' diberikan, nombor baris mesti ditinggalkan. Sebaliknya ini adalah
dijana secara automatik dalam output, dan anda boleh menggunakan label jika perlu
gantikan nombor baris untuk arahan `goto' dsb. Label ditakrifkan bersama teks
`@label:' pada permulaan baris (mungkin didahului oleh ruang putih). Ia boleh dirujuk
kepada (sebelum atau selepas) dengan `@label'. Sebarang aksara ASCII yang boleh dicetak selain daripada bertindih dan
ruang boleh digunakan dalam nama label. Berikut ialah contoh cara label berfungsi, menunjukkan kedua-dua
input dan (penyenaraian) output - pertama, input:
goto @foo
cetak "tidak dilihat"
@foo: cetak "hello world"
Sekarang output:
10 PERGI KE 14
12 CETAK "tidak dilihat"
14 CETAK "hello world"
Perhatikan kes itu is penting untuk label; `foo' dan `FOO' adalah berbeza.
Gunakan zmakebas dalam talian menggunakan perkhidmatan onworks.net