นี่คือคำสั่ง nqc ที่สามารถเรียกใช้ในผู้ให้บริการโฮสติ้งฟรีของ OnWorks โดยใช้หนึ่งในเวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
nqc - ภาษา C-like อย่างง่ายสำหรับอิฐที่ตั้งโปรแกรมได้ RCX ของ Lego
เรื่องย่อ
ยังไม่มีการ [ ตัวเลือก ] [ การปฏิบัติ ] [ - | ชื่อไฟล์ ] [ การปฏิบัติ ]
DESCRIPTION
NQC ย่อมาจาก Not Nothing C และเป็นภาษาง่ายๆ สำหรับการเขียนโปรแกรม LEGO RCX NS
ตัวประมวลผลล่วงหน้าและโครงสร้างการควบคุมของ NQC นั้นคล้ายกับ C มาก NQC ไม่ใช่โครงสร้างทั่วไป
ภาษาวัตถุประสงค์ -- มีข้อจำกัดมากมายที่เกิดจากข้อจำกัดของมาตรฐาน
เฟิร์มแวร์ RCX
หน้านี้ไม่ได้พยายามอธิบายภาษาการเขียนโปรแกรม NQC หรือ RCX API
เพียงตัวเลือกของโปรแกรมบรรทัดคำสั่ง nqc อ้างอิงให้สมบูรณ์ยิ่งขึ้น
เอกสารจะได้รับในตอนท้ายของหน้านี้
โดยปกติ nqc จะใช้ในการประมวลผลไฟล์ต้นฉบับไฟล์เดียวที่กำหนดเป็น ชื่อไฟล์. คุณยังสามารถอ่าน
จาก stdin โดยใช้ - แทนที่. หากชื่อไฟล์ลงท้ายด้วย .rcx, จะถือว่าเป็น RCX
ไฟล์รูปภาพจากคอมไพล์ก่อนหน้า และจะถูกใช้ตามที่เป็นอยู่ (สำหรับการดาวน์โหลดหรือแสดงรายการ)
OPTIONS
-1 ใช้โหมดความเข้ากันได้ของ NQC 1.x RCX API เปลี่ยนไปอย่างมากกับ version
2.0. แฟล็กนี้ทำให้คอมไพเลอร์ grok รหัสเก่า
-Tเป้า
สร้างรหัสและใช้วิธีการสื่อสารสำหรับ "อิฐอัจฉริยะ" นอกเหนือจาก RCX
ปัจจุบันสามารถเป็นได้ทั้ง CM or แมวมอง.
-d ดาวน์โหลดโปรแกรมลง RCX เมื่อให้ตัวเลือกนี้ รหัสจะถูกส่งตรงทับ
พอร์ตอนุกรมไปยังอิฐและไม่มีไฟล์เอาต์พุตถูกสร้างขึ้นตามค่าเริ่มต้น
-n ป้องกันมาตรฐาน nqc.h ไฟล์จากการถูกรวมโดยอัตโนมัติ
-Dซิม[=ความคุ้มค่า]
กำหนดมาโคร ซิม as ความคุ้มค่า.
-E[ชื่อไฟล์]
เขียนข้อผิดพลาดของคอมไพเลอร์ถึง ชื่อไฟล์ (หรือ stdout ถ้าไม่ได้ระบุชื่อไว้) แทน
เพื่อ stderr
-Iเส้นทาง ค้นหา เส้นทาง สำหรับรวมไฟล์. หลายไดเร็กทอรีควรแยกจากกันตามปกติ
สำหรับแพลตฟอร์ม (ภายใต้ Linux / Unix นั่นคือ "") นอกจากนี้ยังสามารถตั้งค่าด้วย
NQC_INCLUDE ตัวแปรสภาพแวดล้อม
-L[ชื่อไฟล์]
สร้างรายการ bytecode ที่มนุษย์สามารถอ่านได้ไปยัง ชื่อไฟล์ (หรือ stdout) แทน
การสร้างไฟล์ไบนารี
-Oออกจากไฟล์
รหัสส่งออกไปยัง ออกจากไฟล์. ตัวเลือกนี้ทำให้ไฟล์ถูกเขียนแม้ว่า -d or -L
ยังได้รับ หากไม่มีการระบุชื่อไฟล์ ไฟล์ที่ส่งออกจะมีชื่อเดียวกัน
ชื่อฐานเป็นไฟล์อินพุต แต่เป็นนามสกุลของ .rcx แทน .nqc.
-Sชื่อพอร์ต
ใช้พอร์ตอนุกรม ชื่อพอร์ต. ภายใต้ลินุกซ์ /dev/rcx เป็นค่าเริ่มต้น (สิ่งนี้จะแตกต่างกัน
บนแพลตฟอร์มอื่น ๆ ) พอร์ตยังสามารถระบุผ่านสภาพแวดล้อม RCX_PORT
ตัวแปร แต่ตัวเลือกบรรทัดคำสั่งมีความสำคัญกว่า
-Uซิม กำหนดมาโคร ซิม.
การกระทำ
การกระทำมีลักษณะคล้ายกับตัวเลือก แต่มีความแตกต่างเล็กน้อย โดยทั่วไปแล้ว
ตัวเลือกตั้งค่าสิ่งต่าง ๆ (เช่นพอร์ตอนุกรม) เพื่อใช้ในภายหลัง ในขณะที่การกระทำทำให้เกิดบางสิ่งบางอย่าง
เกิดขึ้น. การดำเนินการจะดำเนินการตามลำดับที่ปรากฏบนบรรทัดคำสั่ง ใน
นอกจากนี้การกระทำที่ปรากฏก่อนที่ไฟล์ต้นฉบับจะเกิดขึ้นก่อนการคอมไพล์ในขณะที่
การดำเนินการหลังจากไฟล์ต้นทางเกิดขึ้นหลังจากการคอมไพล์ ด้วยเหตุผลทางประวัติศาสตร์
ดาวน์โหลดไฟล์ที่คอมไพล์แล้ว (-d) ทำงานเป็นตัวเลือกไม่ใช่การกระทำ
-วิ่ง เรียกใช้โปรแกรมปัจจุบัน ซึ่งทำให้โปรแกรมที่เลือกใน RCX ทำงานได้
-ppm จำนวน
เลือกหมายเลขโปรแกรม สิ่งนี้จะเปลี่ยนสล็อตโปรแกรมบน RCX
-บันทึกข้อมูล
รับ datalog จาก RCX และพิมพ์ไปยัง stdout
-datalog-เต็ม
เช่นเดียวกับที่ -บันทึกข้อมูล แต่ให้ผลลัพธ์ที่ละเอียดยิ่งขึ้น
-ใกล้ ตั้งค่าพอร์ต IR เป็นโหมดระยะสั้น
- ไกล ตั้งค่าพอร์ต IR เป็นโหมดระยะไกล
-ดู เวลา
ตั้งนาฬิกาของ RCX ให้เป็นเวลาที่กำหนด ถ้าคุณใช้ ตอนนี้จากนั้นโฮสต์ปัจจุบัน
เวลาถูกใช้
-เฟิร์มแวร์ ชื่อไฟล์
ดาวน์โหลดเฟิร์มแวร์ไปยัง RCX คุณจะต้องใช้เฟิร์มแวร์ Lego RCX อย่างเป็นทางการจาก
ซีดีรอม -- ไฟล์ปัจจุบัน (และจนถึงตอนนี้เท่านั้น) เรียกว่า Firm0309.lgo. นี่จะ
อาจจำเป็นในครั้งแรกที่คุณใช้ RCX ของคุณ และทุกครั้งที่ใช้
โดยไม่ต้องใช้แบตเตอรี่นานกว่าสองสามนาที
-เฟิร์มไว ชื่อไฟล์
เช่นเดียวกับที่ -เฟิร์มแวร์แต่ที่ความเร็วสี่เท่า ต้องการให้หอคอยอยู่ในโหมดใกล้ (ดู
-ใกล้). หากคุณประสบปัญหาในการดาวน์โหลดอย่างรวดเร็ว โปรดเปลี่ยนกลับเป็น
วิธีที่เก่ากว่า (และช้ากว่า)
-นอน การหยุดพักชั่วคราว
ตั้งค่าการหมดเวลาการปิดอัตโนมัติของ RCX เป็นนาที
- msg จำนวน
ส่งข้อความ IR ไปที่ RCX อิฐจะตอบสนองต่อสิ่งนี้เช่นเดียวกับที่
การสื่อสารจาก RCX อื่น
-ดิบ ข้อมูล
ส่งแพ็กเก็ตตามอำเภอใจไปยัง RCX และพิมพ์การตอบกลับ (ถ้ามี) ไปที่ stdout NS
data ควรเป็นสตริงเลขฐานสิบหก โดยไม่มีช่องว่าง เติมค่าศูนย์เพื่อให้เป็น an
จำนวนอักขระคู่ (แม้ว่าอาจเป็นจำนวนไบต์คี่) ตัวอย่างเช่น,
หากต้องการอ่านเนื้อหาของตัวแปร 1 คุณสามารถใช้ -ดิบ 120001. bytecodes สำหรับ
ข้อความดิบสามารถพบได้บนเว็บไซต์ที่มีเอกสารเกี่ยวกับโปรโตคอล RCX
รีโมท ความคุ้มค่า ทำซ้ำ
ส่งคำสั่งระยะไกลซ้ำไปยัง RCX
-ชัดเจน ลบโปรแกรมและดาต้าล็อกทั้งหมดออกจาก RCX
และพวกเรา ตัวแปร
RCX_PORT
ตั้งค่าพอร์ตอนุกรมเริ่มต้น ดู -S ตัวเลือก
NQC_OPTIONS
ระบุตัวเลือกพิเศษที่จะแทรกลงในบรรทัดคำสั่ง ตัวอย่างเช่น การตั้งค่า
NQC_OPTIONS ถึง -TScout จะทำให้ nqc กำหนดเป้าหมายลูกเสือโดยค่าเริ่มต้น
NQC_รวม
ระบุเส้นทางเพิ่มเติมเพื่อค้นหาไฟล์รวม ดูเพิ่มเติมที่ -I ตัวเลือก
ตัวอย่าง
ในการรวบรวม ฟู.nqc, ดาวน์โหลด bytecode ไปที่โปรแกรมสล็อตสาม, และทำให้ RCX start
ดำเนินการทันที:
nqc -d -pgm 3 foo.nqc -เรียกใช้
แค่เรียบเรียง bar.nqc, ที่เกิดขึ้นใน บาร์. rcx:
เอ็นคิวซี บาร์.เอ็นคิวซี
ดาวน์โหลด บาร์. rcx ไปที่ RCX:
nqc -d bar.rcx
ในการตั้งค่าหอ IR เป็นโหมดระยะสั้นและดาวน์โหลดเฟิร์มแวร์ด้วยความเร็วสูง:
nqc -ใกล้ -firmfast firm0309.lgo
ในการรวบรวม /usr/share/doc/nqc/examples/test.nqc และพิมพ์รายการ bytecode ที่เป็นผลลัพธ์
ไปยังหน้าจอในรูปแบบที่มนุษย์อ่านได้:
nqc -L /usr/share/doc/nqc/examples/test.nqc
(สิ่งนี้ควรส่งผลให้ผลลัพธ์ต่อไปนี้ภายใต้ nqc 2.1.0:
*** งาน 0 = หลัก
000 pwr เอบีซี, 7 13 07 02 07
004 dir เอบีซี, Fwd e1 87
006 InType 0, สวิตช์ 32 00 01
009 InMode 0, บูลีน 42 00 20
012 ออก A วันที่ 21 81
014 ชเคแอล 1 != อินพุต(0), 14 95 82 09 01 00 00 ฟะ
022 เล่น 0 51 00
024 ออก A, ปิด 21 41
)
ใช้ nqc ออนไลน์โดยใช้บริการ onworks.net
