기관차 베이직

Locomotive BASIC
기관차 베이직
처음 등장1984; 39년 전 (1984년)
OSAMSDOS
면허증.소유권
의 영향을 받은

로코모티브 베이직(Rocomotive Basic)은 로코모티브 소프트웨어암스트래드 CPC에 작성베이직 프로그래밍 언어의 사유 방언이며, 나중에 로코모티브 베이직-2는 암스트래드 PC1512 및 1640의 GEM 응용 프로그램입니다.그것은 Amstrad PCW와 함께 제공되는 CP/M통역사Mallard [1]BASIC의 주요 후손이었습니다.

Rocomotive BASIC에는 CPC 모델 464에만 제공된 1.0과 다른 모든 버전과 함께 제공된 1.1의 두 가지 버전이 있습니다.베이직 1.1은 또한 게임 카트리지의 일부로 암스트라드 CPC 플러스 시리즈 기계와 함께 제공되었습니다.

발전

개발은 BBC Micro를 위해 Acorn Computers Z80 애드온을 작성하기 위해 최근에 수행된 기존 작업을 기반으로 했습니다.기존 코드를 개선하는 데 약 12주가 걸렸고, BBC 베이직의 영향을 많이 받은 것으로 알려졌지만,[1] BBC에서 어셈블리 언어가 필요한 작업을 수행하기 위한 추가 기능을 추가했습니다.

특징들

오늘날의 표준에서는 그래픽 처리 전용 명령어(모든 버전에서는 DRAW, PLOOT, INK, PAPER, v1.1에서는 FILL 등)를 사용하여 컬러 시스템과 팔레트 처리가 어색했지만 여러 화면, 창 등을 만들 수 있었습니다.27가지 시스템 색상에 대한 숫자 코드를 제공하는 표는 664 이상의 기기에 내장된 3" 디스크 드라이브 케이스 위에 인쇄되었습니다.간단하지만 EVERY 또는 AFTER 명령을 사용하여 타이머 기반 소프트웨어 인터럽트 메커니즘을 제공함으로써 당시의 다른 베이직 중에서도 두드러졌습니다. 이것은 사용자가 선택한 기본 회선 번호에 각각 시간 반복 또는 일회성 호출을 제공했습니다.

또한, 당시의 다른 가정용 컴퓨터와 비교했을 때, 로코모티브 베이직을 통한 암스트라드는 3개의 멜로디 채널과 1개의 노이즈 채널이 있는 AY-3-8912인 CPC 사운드 칩에 대한 비교적 높은 수준의 제어를 허용했습니다.동일한 칩이 아타리 ST 및 MSX 컴퓨터뿐만 아니라 최신 모델 ZX 스펙트럼에도 사용되었지만, 이들 중 어느 것도 이렇게 완벽한 내장 사운드 명령을 가지고 있지 않았습니다.특정 채널 또는 채널 조합 선택, 엔벨로프, 볼륨, 피치, 노이즈 설정 등 여러 가지 작업을 최대 7개의 매개 변수를 사용하여 단일 사운드 명령으로 수행할 수 있습니다.물론, 특히 복잡한 및/또는 낮은 수준의 기술은 하드웨어에 대한 더 정확하거나 직접적인 액세스, 특히 추적기의 복잡한 음악(아르페지오를 사용한 시뮬레이션 코드 등), 예를 들어 RoboCop 게임에서처럼 디지털로 샘플링된 소리의 재생 등을 요구하기 때문에 BASIC으로 수행할 수 없었습니다.

디스크, 테이프 및 파일 관리는 BASIC 자체에서 관리되었으며 일반적으로 GET, PUT, ERASE, SAVE, MERGE, RUN, CAT, LOAD 등의 명령을 사용하여 간단한 파일 관리에 충분했습니다.사실, 그 몇 년 동안 대부분의 저가 가정용 컴퓨터에 표준으로 제공된 베이직은 다소 단순한 운영 체제 역할도 했습니다.

메모리 할당 및 처리를 위한 MEMORY 및 파라메트릭 LOAD 명령과 같은 특수 명령도 사용할 수 있습니다. 예를 들어, "원시" 사진 데이터가 포함된 파일을 비디오 메모리에 로드하여 몇 가지 기본 지침과 함께 표시할 수 있습니다.LOAD 또는 SAVE 명령에 올바른 메모리 주소를 매개 변수로 추가하면 압축되지 않은 원시 16KB 화면 사진을 쉽게 로드할 수 있습니다.다른 주소를 호출하면 강제 시스템 재설정(콜 0), 유명한 "Press Any Key"(콜 &bb18) 또는 "sync frame-flyback"(콜 &bd19)을 통해 모니터의 래스터 스캔과 동기화할 수 있게 함으로써 애니메이션에서 깜박임을 제거할 수 있습니다. 이것은 기본 1.1 - 프레임과 PEEK, 그리고 POKE에서 자체 전용 명령어가 주어졌습니다.CALL은 BASIC의 어셈블리 언어 프로그래밍 인터페이스를 제공했습니다.

동시대의 라이벌들

코모도어 64에 내장된 베이직(Commodore BASIC)과는 달리 그래픽이나 사운드에 대한 전용 명령어가 없었습니다. 로코모티브 베이직은 기계의 표준 기능 내에서 거의 모든 작업을 수행할 수 있었습니다.그 시대의 몇몇 다른 기계들은 프로그래머들이 그들의 시스템의 전체 사운드와 그래픽 기능에 접근하기 위해 어셈블러를 사용하도록 요구했기 때문에 이것은 중요하지 않았습니다.MSX, Sinclair Spectrum 및 기타 제품들은 사운드 및 그래픽 기능에 대해 유사하고 다소 완전한 명령 집합을 제공했습니다.게임과 데모에 사용되는 오버스캔 모드, 27색 그래픽 모드, 디지털 사운드 재생, 부드러운 스크롤링 등이 기본 기능을 훨씬 뛰어넘는 기능이었습니다.

싱클레어 베이직이나 코모도어 64 베이직이 기호나 색상을 선택할 수 있는 다양한 키보드 명령 단축키나 특수 키를 가지고 있었던 것과 달리, 로코모티브 베이직 키워드를 전체적으로 입력하고 통역사가 구문 분석, 인식 및 토큰화했습니다.그러나 "PRINT"의 "?"와 같은 약어와 몇 가지 바로 가기가 있었습니다.프로그램을 콤팩트 카세트나 플로피 디스크에 저장하고 이진 또는 ASCII 파일로 검색할 수 있습니다.

레퍼런스

  1. ^ Smith, Tony (12 February 2014). "You're NOT fired: The story of Amstrad's amazing CPC 464". The Register. Retrieved 17 February 2014.

외부 링크