CMDR-DOS:FAT32上的准将DOS



凯撒
2025-05-29 12:48:34 (13分钟前)
www.pagetable.com

CMDR-DOS:FAT32上的准将DOS
从流行的1541 5.25英寸驱动器到现代sd2iec SD卡接口,连接到Commodore 64串行总线的所有磁盘驱动器都使用Commodore DOS协议。CMDR-DOS是Commodore DOS协议的一种新的开放源代码实现,它使用具有FAT32文件系统的SD卡,并支持诸如分区,子目录和时间戳之类的高级功能,并且在65c02上运行!

指挥官X16
它的内置的DOS 指挥官X16,并运行在主CPU上,所以籽粒API( ,talk,tksa,untlk,listn,secnd,unlsn,acptr)ciout直接调用进入DOS执行。LOAD在8 MHz系统上,这允许大约140 KB / sec的速度。

演示:

成绩单:

DOS”$=P”:REM THERE ARE TWO PARTITIONS ON THIS SD-CARD

255 “CMDR-DOS SD CARD” MBR
1 “PART1” FAT32
2 “PART2” FAT32

READY.
DOS”N1:SYSTEM,1616,FAT32”:REM FORMAT PARTITION 1

READY.
DOS”N2:DATA,1617,FAT32”:REM FORMAT PARTITION 2

READY.
DOS”$=P”:REM THE NEW NAMES OF THE TWO PARTITIONS

255 “CMDR-DOS SD CARD” MBR
1 “SYSTEM” FAT32
2 “DATA” FAT32

READY.
DOS”CP1”:REM SWITCH TO PARTITION 1

READY.
DOS”$”:REM SHOW DIRECTORY

0 “SYSTEM “ FAT32
99 MB FREE.

READY.
OPEN1,8,2,”HELLO,P,W”:PRINT#1,”HELLO WORLD!”:CLOSE1:REM CREATE FILE

READY.
DOS”$”

0 “SYSTEM “ FAT32
1 “HELLO” PRG
99 MB FREE.

READY.
DOS”C:WORLD=HELLO”:REM DUPLICATE FILE

READY.
DOS”$”

0 “SYSTEM “ FAT32
1 “HELLO” PRG
1 “WORLD” PRG
99 MB FREE.

READY.
DOS”C:HELLO WORLD=HELLO,WORLD”:REM CONCATENATE FILES

READY.
DOS”$”

0 “SYSTEM “ FAT32
1 “HELLO” PRG
1 “WORLD” PRG
1 “HELLO WORLD” PRG
99 MB FREE.

READY.
DOS”MD:SECRET”:REM CREATE SUBDIRECTORY

READY.
DOS”$”

0 “SYSTEM “ FAT32
1 “HELLO” PRG
1 “WORLD” PRG
1 “HELLO WORLD” PRG
0 “SECRET” DIR
99 MB FREE.

READY.
DOS”$//SECRET/:”:REM SHOW SUBDIR CONTENTS

0 “SYSTEM “ FAT32
0 “.” DIR
0 “..” DIR
99 MB FREE.

READY.
DOS”CD:SECRET”:REM CHANGE TO SUBDIR

READY.
DOS”$”

0 “SYSTEM “ FAT32
0 “.” DIR
0 “..” DIR
99 MB FREE.

READY.
DOS”C:SECRET HELLO=//:HELLO”:REM COPY FILE FROM ROOT TO HERE

READY.
DOS”CD:_”:REM CHANGE BACK UP

READY.
DOS”CP2”:REM CHANGE TO PARTITION 2

READY.
DOS”$

0 “DATA “ FAT32
98 MB FREE.

READY.
DOS”C:DATA FILE=1//SECRET/:SECRET HELLO”:REM COPY FILE FROM PARTITION 1

READY.
DOS”$

0 “DATA “ FAT32
1 “DATA FILE” PRG
98 MB FREE.

READY.
DOS”$1:”:REM SHOW DIRECTORY OF PARTITION 1

1 “SYSTEM “ FAT32
1 “HELLO” PRG
1 “WORLD” PRG
1 “HELLO WORLD” PRG
0 “SECRET” DIR
99 MB FREE.

READY.
DOS”S1:H*”:REM DELETE ALL FILES THERE STARTING WITH H

READY.
DOS:REM THIS WILL SAY THAT “02” FILES WERE DELETED
01, FILES SCRATCHED,02,00

READY.
DOS”CP1”:REM CHANGE BACK TO PARTITION 1

READY.
DOS”$

0 “SYSTEM “ FAT32
1 “WORLD” PRG
0 “SECRET” DIR
99 MB FREE.

READY.
DOS”S:*”:REM DELETE ALL REMAINING FILES

READY.
DOS:REM THIS WILL SAY THAT “01” FILE WAS DELETED
01, FILES SCRATCHED,01,00

READY.
DOS”$”:REM THE DIRECTORY IS STILL THERE

0 “SYSTEM “ FAT32
0 “SECRET” DIR
99 MB FREE.

READY.
DOS”RD:SECRET”:REM DELETE IT

READY.
DOS:REM “00” FILES DELETED, BECAUSE DIR WAS NOT EMPTY
01, FILES SCRATCHED,00,00

READY.
DOS”S//SECRET/:*”:REM DELETE ALL FILES INSIDE

READY.
DOS:REM “01” FILE DELETED
01, FILES SCRATCHED,01,00

READY.
DOS”RD:SECRET”:REM NOW TRY DELING THE DIR AGAIN

READY.
DOS:REM “01” FILES DELETED, IT WORKED THIS TIME
01, FILES SCRATCHED,01,00

READY.
DOS”$

0 “SYSTEM “ FAT32
99 MB FREE.

READY.
REM THAT’S IT. :)

READY.
资源
该实现是Commander X16 ROM的一部分,可在此处获取:

https://github.com/commanderx16/x16-rom/tree/master/dos

未来
该代码库非常通用,可以重用于其他类型的项目:

其他新型复古机
CMDR-DOS可以轻松移植到其他类似Commodore的65c02 +系统,例如MEGA65和C256 Foenix,从而在这些平台上为FAT32提供DOS接口。

类似于sd2iec的设备
从功能上讲,CMDR-DOS代码库也非常类似于sd2iec所做的事情-减去了Commodore Serial部分。可以将其移植到1581replica之类的设备上,该设备附有SD卡而不是磁盘驱动器,并且该设备将具有基于65c02的sdi2ec类设备。

分类目录6502,Commodore,Commodore外围总线,DOS,GitHub,KERNAL,操作系统,X16
帖子导航
用于65c02的FAT32文件系统

1 条回复
  1. 动动手指,沙发就是你的了!
登录 后才能参与评论