베타 BASIC

Beta BAS
베타 BAS
Screenshot betabasic 31.png
작동 중인 베타 베이직 스크린샷
원저작자앤디 라이트 박사
개발자베타 소프트
초기 릴리즈1983년, 39년(연장)
최종 릴리즈
베타 Basic v4.0 / 1987, 35년 전(1987년)[1]
운영 체제ZX 스펙트럼
유형기본 프로그래밍 언어 통역사
면허증.독자 사양

Beta BASIC은 Sinclair Research ZX Spectrum 마이크로컴퓨터의 베이직 인터프리터입니다.Dr. Andy Wright가 1983년에 작성, 1인용 소프트웨어 회사인 Beta [1]Soft가 판매합니다.베타소프트는 정규 뉴스레터/잡지 베타뉴스도 제작했습니다.

처음에는 BASIC 툴킷으로 시작했지만 시간이 지나면서 완전히 대체되었습니다.

시설.

베타 베이직은 싱클레어 베이직(Sinclair BASIC)을 완전히 대체했으며, 이는 당시 공통적으로 명령줄 인터페이스(CLI)를 제공하는 OS이기도 했습니다.따라서 베타 베이직은 새롭고 개선된 CLI와 에디터를 제공했습니다.BASIC 키워드는 싱클레어의 독특한 싱글키 입력 시스템을 지원하면서도 키워드를 Letter-for-Letter로 표기할 수 있도록 했다.이것에 의해, 자주 사용하지 않는 BASIC 키워드를 입력하기 위해서 필요한 복잡한 키의 편성을 기억할 필요도 없어졌습니다.그러나, 싱글 키 입력 시스템 또한 Spectrum의 '그래픽스' 문자를 베타 베이직의 새로운 키워드에 매핑함으로써 확장되었다.키워드 엔트리에서 입력된 엔트리로 전환하려면 공백 하나만 입력하면 됩니다.이 때문에 커서 모드가 K(키워드)에서 L(소문자) 또는 C(대문자)로 바뀝니다.(Keywords 문은 K 모드를 디세블로 하는 등, 이 동작을 변경하기 위해서도 사용할 수 있습니다).

에디터는 목록 작성 시 선택적으로 코드를 자동으로 인쇄할 수 있습니다.Sinclair BASIC에서는 이를 수동으로 수행할 수 있었지만, 자동 들여쓰기는 특정 유형의 코딩 오류를 강조 표시할 수 있는 장점이 있습니다. 주로 구문을 올바르게 닫지 못한 것과 관련이 있습니다.기타 편집 기능에는 현재 행 표시기의 자동 강조 표시(작은 수정이지만 불균형적으로 도움이 됨)와 커서를 좌우뿐만 아니라 위아래로 이동할 수 있는 기능이 있어 긴 줄을 편집할 때 큰 장점이 되었습니다.64컬럼의 디스플레이(아래의 「신기능」섹션 참조)와 조합하는 것으로, Beta BASIC은 표준 Sinclair BASIC의 코딩이나 Beta Soft의 언어 추가를 사용하지 않는 환경에서도, 한층 더 생산적인 환경이 되었습니다.

Beta BASIC은 또한 라이브러리로 사용되었던 Spectrum ROM을 우회하여 자체 권한으로 독립 실행형 인터프리터였다.ROM 루틴이 충분하거나 공간상의 이유로 재실장할 가치가 없는 함수에 액세스하기 위해 ROM을 호출하는 경우가 종종 있었습니다.베타 베이직은 Spectrum에서 사용할 수 있는 48KB의 메모리에서 실행되어도 사용자 코드의 여유를 남겨야 했습니다.

언어 변경

그 당시 베타 베이직은 정교했다.명명된 프로시저 및 함수와 함께 완전한 구조화된 프로그래밍을 제공했으며, 로컬 변수를 사용하여 재귀적인 프로그래밍을 가능하게 했습니다.회선번호는 서포트하고 있습니다만, 불필요하고, 회선번호의 표시를 완전하게 억제하는 동작 모드를 제공하고 있습니다.

128K Spectrum 머신에서 Beta BASIC은 프로그래머가 RAM 디스크 형태로 머신의 추가 메모리에 액세스할 수 있는 확장 기능을 제공했습니다.Beta BASIC은 프로그래머가 프로그램, 메모리 블록 또는 화면 이미지를 RAM 디스크에 저장 및 로드하고 RAM 디스크의 콘텐츠를 카탈로그로 만들 수 있도록 하며, 또한 RAM 디스크에 저장된 어레이를 생성 및 사용하기 위한 명령어를 제공하여 Spectrum에서 30KB 정도의 빈 메모리를 실행하는 프로그램이 어레이를 조작할 수 있도록 합니다.Roaching 80KB - 1980년대 표준으로 따지면 상당한 추가 용량이며, 일반적으로 프로그램과 데이터를 합친 64KB로 제한되었던 다른 8비트 BASIC보다 더 많은 용량입니다.

신기능

또한 Beta BASIC은 Spectrum의 256x192 픽셀 디스플레이를 직접 구동하여 ROM의 32컬럼 텍스트 디스플레이의 제약을 없앴다.베타 베이직은 확장 가능한 화면 글꼴을 제공했으며, 너비는 4픽셀에 불과하지만 여전히 읽을 수 있는 특별한 소프트 글꼴을 포함했습니다.이는 베타 베이직이 화면 전체에 64열의 텍스트를 표시할 수 있다는 것을 의미하며, 이는 컴퓨터 단말기와 일반적인 취미 생활자 및 프로페셔널 CP/M 기기의 기존 80열 디스플레이와 비교가 될 수 있다는 것을 의미했다. (80년대의 가정용 컴퓨터도 80열을 표시할 수 있었다.)사용자가 문자를 공백 없이 표시할 수 있도록 준비했다면 85열 표시가 가능했다.이것은 읽기 쉽지는 않았지만 80컬럼 화면용으로 설계된 베이직 어플리케이션을 쉽게 이식할 수 있었습니다.프로그램 디스플레이의 일부가 64열 텍스트, 32열 텍스트 및 중간 크기를 확대 또는 축소할 수 있도록 텍스트 크기를 프로그래밍 방식으로 제어할 수 있습니다.

인터페이스 1 및 ZX Microdrive 사용자를 위해 특별 버전이 제작되었으며, 이후 Opus Discovery, DISCiPLEPlusD 디스크 인터페이스를 사용하는 사용자를 위해 제작되었습니다.Amstrad Spectrum +3 버전도 잠시 검토 중이었으나 Wright는 이 프로젝트를 포기했다.

제한 사항

베타 베이직에는 몇 가지 제한이 있었습니다.다른 8비트 마이크로프로세서와 마찬가지로 Spectrum의 Zilog Z80 CPU의 어드레싱 제한으로 인해 Spectrum은 64KB의 연속 메모리만 어드레스 할 수 있었습니다.이 중 16KB는 Sinclair BASIC ROM에 의해 처리되어 RAM에 48KB가 남았습니다.인터프리터 자신의 내부 데이터 구조를 유지하는 데 사용되는 영역과 마찬가지로 화면도 이 중 일부를 차지했다.Beta BASIC은 나머지 약 11-12KB를 차지했으며, 경우에 따라서는 사용자 프로그램용으로 20KB 정도만 남겨두었습니다.

싱클레어의 에디터가 교체되면서 128K Spectrum ROM의 풀스크린 BASIC 에디터를 사용할 수 없게 되었습니다.베타 베이직 코드에 사용할 수 있는 컴파일러가 없었기 때문에 HiSoft BASIC 등의 기존 Sinclair BASIC 컴파일러는 베타 베이직의 확장 키워드와 기능을 처리할 수 없었습니다.

또 다른 Sinclair BASIC 제한사항은 문자열, 배열 및 기타 유형에 대해 단일 문자 변수 이름만 사용할 수 있다는 것입니다.

구조화된 프로그래밍을 기본적으로 지원하는 다른 8비트 BASIC은 BBC BASIC뿐이었습니다.Beta BASIC 명명 프로시저는 BBC BASIC과 같이 PROC 키워드로 호출할 필요가 없어 새로운 언어 키워드가 되어 언어 자체를 확장할 수 있게 되었습니다.하지만, BBC BASIC은 상당히 빨랐습니다 - 그 당시 가장 빠른 BASIC 통역사였습니다.베타 베이직은 특별히 빠르지는 않았지만, 원과 호 그리기 코드와 같이 특히 느린 ROM 루틴을 더 빠르게 대체했습니다.

릴리스 이력

  • 베타 베이직 V1.0 - 1983
  • 베타 베이직 V1.8 - 1984
  • 베타 베이직 V1.9 - 1984
  • 베타 베이직 V3.0 - 1985
  • 베타 베이직 V3.1 - 1985
  • BetaBasic V4.0 - 1987

후속 개발

Miles Gordon Technology의 SAM Coupé, Alan Miles 및 Bruce Gordon은 Spectrum의 세련된 새로운 후계기 개발 중에 베타소프트에 접근하여 새로운 머신의 BASIC을 제공하는 계약을 체결했습니다.그는 베타 베이직에서 광범위하게 이끌어낸 완전한 베이직 인터프리터를 제공했지만, 이것은 그 자체로 언어이며 Sinclair ROM을 호출하거나 작업할 수 없었기 때문에 다른 구조를 가지고 있었다.SAM BASIC은 베타 베이직과 대부분 호환되며 SAM의 화면과 확장 메모리 등 SAM 하드웨어가 크게 다른 영역을 제외하고는 매우 유사한 방식으로 작동했습니다.베타소프트는 이후 마스터라는 이름의 SAM BASIC 확장 버전을 출시했다.베이직[2]

레퍼런스

  1. ^ a b 베타 베이직 - World of Spectrum
  2. ^ 마스터 베이직 - World Of Sam