在Freedos中运行Turbo C++ 我想在FreeDos中运行Turbo C++。我以前在DosBox中运行它,但现在我决定在我的台式电脑上测试FreeDos

在Freedos中运行Turbo C++ 我想在FreeDos中运行Turbo C++。我以前在DosBox中运行它,但现在我决定在我的台式电脑上测试FreeDos,c++,ide,dos,turbo-c++,C++,Ide,Dos,Turbo C++,但是每次我试着运行它时,光标都会闪烁,在我输入命令并按enter键后什么也没有发生,提示不会返回C:>并且我必须按电源按钮重新启动系统。我的问题是: 我怎样才能真正运行它?它需要额外的驱动程序或文件吗 如果不能运行,你还有其他C++ IDE吗?也许是你自己的IDE 另外,我使用Rufus的FreeDos选项安装了FreeDos。FreeDos不是MS-DOS,因此不兼容是意料之中的。然而,我并没有接触过FreeDOS,但这里有一些MS-DOS的提示,所以它们或多或少也适用于FreeDOS 没有h

但是每次我试着运行它时,光标都会闪烁,在我输入命令并按enter键后什么也没有发生,提示不会返回C:>并且我必须按电源按钮重新启动系统。我的问题是:

我怎样才能真正运行它?它需要额外的驱动程序或文件吗

如果不能运行,你还有其他C++ IDE吗?也许是你自己的IDE

另外,我使用Rufus的FreeDos选项安装了FreeDos。

FreeDos不是MS-DOS,因此不兼容是意料之中的。然而,我并没有接触过FreeDOS,但这里有一些MS-DOS的提示,所以它们或多或少也适用于FreeDOS

没有himem.sys,您就没有高内存

因此,所有内容都只有640 KB,而不是1 MB。这并不像某些程序需要540 KB的内存

没有Emm386.exe或QEMM386,您就没有XMS内存

如果我的记忆比也DPMI驱动程序将无法工作涡轮需要

如果没有正确的autoexec.bat和config sys,任何东西都无法工作

您没有路径、设备驱动程序、鼠标、CDROM等,也没有声卡等设置。如果您不知道要放入什么,请从DOSBOX复制,减去DOSBOX安装线。没有路径通常也意味着没有command.com,因此没有shell,因此没有命令可用

您使用什么文件系统

我不会因为年纪大一点的事而去英国。FAT32仅适用于win98中较新的MS-DOS版本。不要使用NTFS或EXT,即使您的驱动程序一直导致问题

计算机速度

许多DOS程序基于Borlands CRT库。随着计算机的加速,这导致了很多问题。如果我没记错的话,有一个运行时错误是由它引起的。要纠正这些程序,你可以做两件事。修补或重新编译其中的CRT库有一些修复程序,或者转到BIOS并关闭CPU缓存L1、L2。。。这将把你的现代计算机变成速度非常快的386,应该仍然通过CRT初始化。否则,计时将关闭,程序将崩溃/挂起等。。。DOSBOX emulator设计用于以原始速度运行程序,而不是以尽可能快的速度运行程序,因此如果使用该模拟器,则无需进一步调整

记忆

旧的DOS不能处理超过64Mbyte的数据,甚至有些程序也有问题。最安全的方法是将可用内存限制在32 MB。我通常使用RAMDISC和/或SMARTDRIVE缓冲区来完成,所以DOS程序只剩下32MB的内存。如果您看到负数正在跨越障碍,需要增加SMARTDRIVE或RAMDISK的使用率,则可以使用mem命令查看您的状态

请不要忘记在退出之前不时保存SMARTDRIVE缓冲区,以避免在发生重置或崩溃/挂起/冻结时丢失数据。。。这是一个好主意,使用沃尔科夫指挥官或诺顿指挥官与预定义的菜单,这样的行动。您甚至可以将文件扩展名与查看器、编辑器和IDE关联起来。所以,如果您执行asm或cpp,它将在首选IDE端编译或打开,等等

下面是取自我的古老MS-DOS救援光盘的autoexec.bat和config.sys示例:

自动执行

Config.sys

它有启动菜单,您可以在其中选择所需的配置。只需更改驱动器号和路径。注意:a,:b,。。。和[a],[b],。。。不是驱动器号,而是菜单项

shell是command.com的位置。gmouse是鼠标驱动程序,不是DOS的一部分,你需要下载它,vc是Volcov commander filemanager,你并不真正需要它,它也不是DOS的一部分,但拥有它确实是一个好主意。您可以忽略SB16和sound blaster设置,因为在没有任何仿真/驱动程序的情况下,您很可能获得相同的声卡,甚至完全兼容SB

e:\rescue\dos98\是我的MS-DOS命令的位置,请将其替换为您的位置

cd命令更改目录,lh加载到高内存而不是基本内存,以保留基本内存

如果我希望您避免兼容性问题,我会尝试获取MS-DOS 6.22


所以我敢打赌,您可能同时遇到了上述所有问题,导致操作系统无法运行。

您认为为什么要这样做?相信我,你不想。我想在FudioOS中运行涡轮增压C++——不,你不需要。你想得到一个现代编译器,在这里你可以使用现代C++,并且你想在现代OS上运行它。忘记Turbo C++,它是古老的,标准的,不值得你花时间去教它,它会是坏习惯和坏C++ C++,不使用它。我的学校在ToBOX中使用Turbo C++,我是一个学生。所以我用它。我们被教导使用和编码。但是我想在FreeDos中测试它。我还注意到Dos Navigator 2没有运行,它还挂起了上面提到的计算机。大概
我觉得配置没有正确设置,我不得不创建config.sys,但我不知道该放什么。我还怀疑这是否是由于缺少HIMEM.sys和其他文件造成的?DOSBOX仿真故意缓慢,所以时机是正确的。@Thorbjørnravandersen我已经知道并在项目符号5中说明了这一点:DOSBOX仿真非常缓慢,所以它很容易通过而不需要任何调整。这是不明确的。我读到这篇文章是因为它写得太糟糕,以至于它本身就很慢。如果作者有意将其校准到一定的速度,那就不同了。@Thorbjørnravandersen嗯,我明白你的意思了,如果你有更好的公式,请在。。。
@echo off
PROMPT $P$G
PATH e:\rescue;e:\rescue\dos98;e:\rescue\vcnew;e:\rescue\pack;e:\rescue\views
e:
cd rescue
SET TEMP=e:\rescue\temp
SET BLASTER=A220 I5 D1 H5 P330 E620 T6
SET SOUND=e:\rescue\SB16
SET MIDI=SYNTH:1 MAP:E MODE:0
e:\rescue\SB16\DIAGNOSE /S
e:\rescue\SB16\AWEUTIL /S
e:\rescue\SB16\MIXERSET /P /Q

goto %config%
:a
:b
:c
:d
:e

lh gmouse
LH vc
;devicehigh=e:\rescue\dos98\interlnk.exe
shell e:\rescue\dos98\command.com e:\rescue\dos98 /P
lastdrive=M
files=50
buffers=8
stacks=0,0
DOS=HIGH,UMB

[menu]
menuitem=a,QEMM
menuitem=b,EMM EMS
menuitem=c,EMM NOEMS
menuitem=d,STANDART
menuitem=e,RAMDISK 32MB
menudefault=d,1

[a]
device=e:\rescue\dos98\qemm386.sys RAM BE:N
[b]
device=e:\rescue\dos98\himem.sys 
devicehigh=e:\rescue\dos98\emm386.exe rammax
[c]
device=e:\rescue\dos98\himem.sys
devicehigh=e:\rescue\dos98\emm386.exe noems
[d]
device=e:\rescue\dos98\himem.sys
[e]
device=e:\rescue\dos98\himem.sys
devicehigh=e:\rescue\dos98\ramdrive.sys 32767 /e