CP/M-86에서 재미를위한 몇 가지 실험. 초점은 IBM XT CP/M-86 및 PC의 파생 상품에 중점을 둡니다. 그러나 대부분의 도구는 Just4Fun V20-MBC SBC와 함께 작동합니다.
CP/M-86 DOC, 소스 및 바이너리의 소스는 http://www.cpm.z80.de입니다.
정리 배포 및 커널은 https://github.com/tsupplis/cpm86-kernel에서 제공됩니다. 이 분포는 가상 환경에서 잘 작동하며, 모든 알려진 패치, 'Y2K'친화적 인 '이 프로젝트에 소스가있는 TOD 버전이 포함되어 있음)와 친절하게 작동합니다.
INF: Usage: ls [-h] | [-a] [-p] [-s|-r] [-l|-b] filepat
INF: File listing utility
INF: where filepat is [user/]filespec with wildcard
INF: -h for help
INF: -a for all files (including system)
INF: -p for for pausing one screen at a time
INF: -s for alphabetic sorting
INF: -r for reverse alphabetic sorting
INF: -l for long listing
INF: -b for basic listing
INF: Usage: rm [-h] | [-a][-i] filepat
INF: File delete utility
INF: where filepat is [user/]filespec with wildcard
INF: -h for help
INF: -a to include both dir and sys files
INF: -i for user validation per file
INF: -f force file deletion even if read only
INF: Usage: more -h | [infile]
INF: File paging utility
INF: where infile is [user/]filespec
INF: -h for help
INF: Usage: write -h | [-a] filename
INF: File write/create utility
INF: where filename is [user/]filespec
INF: -h for help
INF: -a to happen to existing file
(입력을 완료하는 데 사용되는 Ctrl-C 또는 Ctrl-Z)
INF: Usage: dump -h | [-p][-r] [infile]
INF: Hexa file dump utility
INF: where infile is [user/]filespec
INF: -h for help
INF: -p pausing every page
INF: -r raw output
INF: Usage: mode -h | option option ...
INF: Console configuration utility
INF: -h for help
INF: and options:
INF: cls Clear screen
INF: cursor=on Show cursor
INF: cursor=off Hide cursor
INF: statln=on Show status line
INF: statln=off Hide status line
INF: status= Set status line message
INF: fg= Set foreground color (1-F)
INF: bg= Set background color (1-F)
INF: Usage: touch [-h] | filespec
INF: Empty file creation utility
INF: -h for help
INF: Usage: wc [-h] | [-a] filepat [filepat] ...
INF: File word/line/character count utility
INF: where filepat is [user/]filespec with wildcard
INF: -h for help
INF: -a to include both dir and sys files
INF: Usage: printenv [-h]
INF: Display environment variables
INF: -h for help
상태의 경우 ( s : space, \ : , u : 어퍼, l : 하단)
Atinit, rtcinit 및 pceinit 도구
CP/M-86 1.1, BDO 2.2
Hardware Configuration:
- System Memory: 640Kb
- Available Memory: 607Kb
- Math Coprocessor: No
- Floppy Drive(s): 2
- Hard Disk(s): 1
- Parallel Port(s): 1
- Serial Port(s): 2
Date now: 2021-9-27 22:17:39.0
모든 C 도구 (rm, ls, mode, more, write, dump)는 aztec c : [user]/[drive] : [filespec]의 파일 사양 패턴에서 이익을 얻습니다. 기본 <파일 및> 파일 리디렉션도 지원됩니다.
달리 언급되지 않는 한 모든 도구가 작업 중입니다
다음 OS의 경우 파일 도구 만 잘 작동합니다. BIOS와의 상호 작용은 일반적으로 금지됩니다 (atinit/attime 및 pceinit/pcetime) ...
이 OS는 플로피 및 HD 이미지에서 PCE에서 엄청나게 잘 작동합니다. 이 에뮬레이터는 단순하고 작으며 치료를합니다. 환상적 ...


LINK86 Linkage Editor 02/Feb/87 Version 2.02
Cross Linker: DOS -> CPM-86 & CDOS-286 1/2/86
RASM-86 Assembler 12-Mar-87 PC-DOS Version 1.4a
초보적인 교차 개발 환경의 경우 (https://github.com/tsupplis/cpm86-crossdev)를보십시오.
일부 제출/배치 스크립트는 DOS (AZTEC 3.4) 및 CP/M-86 (AZTEC 3.2)에 대해 제공됩니다.
매우 원시적 인 OS 임에도 불구하고 (경우에 따라 실제로는 즐겁게 원시적입니다.
이 작은 OS의 큰 멋진 것은 그것이 얼마나 작은 지입니다. 나는 PCE VM에서 128K 이상을 구성하지 않으며 한 사람이 애호가로 플레이 할 수 있습니다. 앞서 언급 한 바와 같이 Just4fun V20-MBC SBC (https://hackaday.io/project/170924-v20-mbc-a-v20-8080-8080-cpu-homebrew-computer에서도 잘 작동합니다. 시원한 다른 것 : 위의 TOD 교체 및 작은 시각적 해킹을 준수하는 Y2K입니다. 네 날짜 관리가 없습니다 ...
그것은 MS-DOS의 초기 소스를 매력적으로 만듭니다. MS-DOS 2.X는 훨씬 유연하며 CP/M-86보다 더 큰 생태계를 가지고 있습니다. 이것은 더 도전으로 만듭니다 ;-)
DR 도구는 (http://www.cpm.z80.de/binary.html)를 통해 제공됩니다. 나는 PCE에 의해 모방 된 RC700 시리즈 컴퓨터에 중점을 둔 매우 철저한 덴마크 사이트에서 Turbo Pascal과 Poly Pascal의 마지막 출시를 발견했습니다. 그것들은 PC 호환되지 않지만 Pascal은 모두 일반적이며 IBM PC 기반 CP/M-86 제품군에서 작업합니다.
그러나 다음 정의를 사용하여 CPMTools를 사용하여 파일을 디스크 이미지에서 추출해야합니다.
diskdef rc75x
seclen 1024
tracks 154
sectrk 8
blocksize 2048
maxdir 512
boottrk 4
os 3
end
Turbo Pascal 3.01a는 CP/M-86의 마지막 방출이며 (Tinst를 사용하여 구성하는 것을 잊지 마십시오) 영어로 제공됩니다. Poly Pascal은 영어로되어 있지만 메시지 파일과 온라인 도움말은 덴마크어입니다. 그들을 번역하는 것은 큰 문제가 아닙니다. Poly Pascal은 실제로 Turbo Pascal의 쌍둥이, 형제 또는 조상입니다. 그것을 가지고 놀기 위해 멋지다.
매크로 어셈블러, C, Pascal, Structure Basic ... 우리는 무엇이 필요합니까?
교차 컴파일은 DOS 에뮬레이션 (EMU2, PCE)을 사용하거나 하이브리드 OS를 사용하여 수행 할 수 있습니다.
... 위의 모든 도구 (DOS 및 CP/M 버전 모두)를 실행하면 CMD 바이너리를 직접 테스트 할 수 있습니다.
DOS에 대한 몇 가지 CP/M-86 에뮬레이터가 존재합니다 (Ame86.exe, CPM86.exe) 불행히도 소스는 어디에서나 보이지 않으며 약간의 유지 보수가 필요합니다. 기초 프로그램 만 작동합니다.
마지막으로 ASM86 및 GENCMD를 사용하는 어셈블리도 수행 할 수 있지만 CP/M 환경에서 수행해야합니다 (CP/M-80 또는 CPM-86 유도체를 사용할 수 있습니다).
그래도 툴링 측면에는 약간 부족합니다 ... 그래서 나는 안락함을 위해 도구를 조금씩 포트 할 것입니다.
아직도 그것은 재미있는 발견과 고고학입니다 ...