China DOS Union

-- Unite DOS · Advance DOS · Grow DOS --

Union site: www.cn-dos.net Forum site: www.cn-dos.net/forum
DOS stands for freedom, openness and progress. Let us work hard, learn from the openness and GNU spirit of FreeDOS and Linux, and together build and grow a free GNU GPL world!

中国DOS联盟论坛
The time now is 2026-06-30 09:57
中国DOS联盟论坛 » DOS疑难解答 & 问题讨论 (解答室) » How to release the memory consumed by loading the USB driver? View 2,393 Replies 25
Original Poster Posted 2006-04-18 10:04 ·  中国 浙江 杭州 电信
银牌会员
★★★
Credits 1,582
Posts 603
Joined 2006-02-20 20:26
20-year member
UID 50690
Status Offline
How to release a large amount of memory consumed by loading USB drivers under pure DOS?

I have loaded XMS under MS-DOS 8.0, and after loading the USB driver, I can effectively recognize USB drives and external hard drives under pure DOS. However, a large amount of memory is consumed because the USB driver searches for USB drives. I would like to ask all the experts, what good solutions are there?

I connected an 80G external hard drive and correctly identified three external drive letters. Then under DOS, I wanted to enter these three external drive letters respectively and DIR them. As a result, I just entered the second external drive letter and then the computer crashed!

Then I restarted the computer and used MEM.EXE to check the memory usage:

Total = Used + Free
Conventional 636K 48K 588k
Total Memory 519420 154 519266
Total Under 1Mb 636K 48K 588k

Largest executable program size 584K
Largest free upper memory block 0K
Available space in High Memory Area 2K
MS-DOS is resident in the high memory area.

Then under DOS, I entered these three external drive letters respectively, and could see the file names in their respective drives. Then I executed a COPY command to copy a very small notepad file from one external drive to another, and then the computer crashed again!

May I ask why this is happening and why it always crashes? Is it a bug in the USB driver or because of insufficient memory? If it is insufficient memory, how can I release it?


Attached is the latest version of "dos4usb".
Attachments
dos4usb.rar (32.24 KiB, Credits to download 1 pts, Downloads: 75)
MEM.rar (14.51 KiB, Credits to download 1 pts, Downloads: 42)
Floor 2 Posted 2006-04-19 18:22 ·  中国 山西 大同 中移铁通
元老会员
★★★★
Batchinger
Credits 4,432
Posts 1,512
Joined 2002-10-18 00:00
23-year member
UID 19
Gender Male
Status Offline
Re martin325:

It is speculated that there is a compatibility issue with the USB driver. You can determine the problem by the following method: when DOS starts, press F4 to skip the configuration of the CONIG/AUTOEXEC files. Then observe the result when loading USB. If everything is normal, it means that there is a conflict between the USB driver and one or some memory configuration programs in the C/A files. Debug line by line or by the dichotomy method until the problematic statement is found. If the system still freezes, it proves that the USB driver itself is not perfect and cannot fully support your external hard drive or motherboard.

It should be mentioned that I have tried a small number of boot disks and DOS USB drivers, but there are no successful records. Whether it is a desktop or a notebook, a flash drive or an external hard drive. Because there is no special need in this regard, I haven't studied it deeply, but I always think it is a very worthy topic for discussion in DOS technology research. I hope to get more test and usage reports to improve everyone's understanding of DOS USB drivers.
※ Batchinger 致 Bat Fans:请访问 批处理编程的异类 ,欢迎交流与共享批处理编程心得!
Floor 3 Posted 2006-04-19 19:23 ·  中国 浙江 杭州 电信
银牌会员
★★★
Credits 1,582
Posts 603
Joined 2006-02-20 20:26
20-year member
UID 50690
Status Offline
When loading USB, CONFIG.SYS only loads the following several:
Device=himem.sys /testmem:off
Device=break.sys
Device=break.sys /c
files=10
buffers=10
dos=high,umb
stacks=9,256
lastdrive=z

There is nothing loaded in AUTOEXEC.BAT either:

@echo off
goto %config%

:help
call WINMEDOS.BAT
goto quit

:usb
call LOADUSB.BAT
goto quit

:cd
call WINMEDOS.BAT
goto quit

:nocd
call WINMEDOS.BAT
goto quit

:quick
call WINMEDOS.BAT
goto quit

:quit
ECHO.
Floor 4 Posted 2006-04-19 23:48 ·  中国 四川 绵阳 电信
高级用户
★★
Credits 587
Posts 282
Joined 2006-04-10 03:40
20-year member
UID 53599
Gender Male
Status Offline
I've been using USBASPI.SYS and Di1000dd.SYS for loading, and there are no problems when using them.
Floor 5 Posted 2006-04-20 02:19 ·  加拿大 Bell
系统支持
★★★★★★
“新DOS时代”站长
Credits 27,736
Posts 10,521
Joined 2002-10-09 12:00
23-year member
UID 9
Status Offline
I also often use USBASPI.SYS and DI1000DD.SYS drivers to drive USB flash drives under MS-DOS 7.1, and I haven't had this kind of problem either.
Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

Floor 6 Posted 2006-04-20 02:46 ·  中国 广东 肇庆 电信
高级用户
★★
Credits 578
Posts 135
Joined 2003-07-10 00:00
22-year member
UID 6709
Gender Male
Status Offline
Encountered a similar situation, and it feels like it's still due to loading too much, resulting in insufficient memory.

For example, the phenomena I encountered:
1. Load the CD-ROM driver, Tianhui Chinese system, ntfsdos, then USBMASS fails;
Load the CD-ROM driver, Tianhui Chinese system, USBMASS, then ntfsdos fails.
2. Do not load the CD-ROM driver, only load the Tianhui Chinese system, ntfsdos, then USBMASS succeeds;
Do not load the CD-ROM driver, only load the Tianhui Chinese system, USBMASS, then ntfsdos succeeds.
Floor 7 Posted 2006-04-21 20:47 ·  中国 四川 绵阳 电信
高级用户
★★
Credits 587
Posts 282
Joined 2006-04-10 03:40
20-year member
UID 53599
Gender Male
Status Offline
It is suggested that you first optimize the boot configuration, or use the traditional boot method. Don't make the boot too fancy.
Floor 8 Posted 2006-04-22 19:11 ·  中国 浙江 杭州 电信
银牌会员
★★★
Credits 1,582
Posts 603
Joined 2006-02-20 20:26
20-year member
UID 50690
Status Offline
Originally, I was using LOADUSB.EXE from dos4usb to load in a batch script, and encountered the situation described in post #1.

Today, I tried directly loading Usbaspi.sys and DI1000DD.SYS in config.sys, and everything worked normally!

Now there's a problem I need to ask everyone:
How to load Usbaspi.sys and DI1000DD.SYS in a batch script?
Floor 9 Posted 2006-04-22 19:22 ·  中国 广东 佛山 电信
金牌会员
★★★★
Credits 3,467
Posts 1,616
Joined 2004-06-21 00:00
22-year member
UID 27148
Status Offline
You can use loadsys.exe to load and unload usbaspi.sys and di1000dd.sys, and then write a batch script to achieve an operation similar to plug and play under DOS. Plug in the USB flash drive and run the batch script to load the driver; before unplugging the drive, use the batch script to unload the driver.
Floor 10 Posted 2006-04-22 19:37 ·  中国 浙江 杭州 电信
银牌会员
★★★
Credits 1,582
Posts 603
Joined 2006-02-20 20:26
20-year member
UID 50690
Status Offline
Please ask fujianabc to provide loadsys.exe!
Floor 11 Posted 2006-04-22 19:43 ·  中国 浙江 杭州 电信
银牌会员
★★★
Credits 1,582
Posts 603
Joined 2006-02-20 20:26
20-year member
UID 50690
Status Offline
Found it, heh heh.
A bit large, it's 64.4K!
Floor 12 Posted 2006-04-22 20:23 ·  中国 浙江 杭州 电信
银牌会员
★★★
Credits 1,582
Posts 603
Joined 2006-02-20 20:26
20-year member
UID 50690
Status Offline
Because the volume of loadsys.exe is too large! I still chose devload.com to load the USB driver. Abandoned using LOADUSB.EXE in the dos4usb compressed package.

Write in the batch processing:

@echo off
echo.
echo Please insert your USB device firstly.
echo.
echo Press any key to continue...
pause >nul
echo.
echo Loading USB. Please Wait About 30 Seconds...
echo.
cd dos4usb
lh devload.com usbaspi.sys /V /NORST
lh devload.com DI1000DD.SYS
cd\

The test is all normal!
Floor 13 Posted 2006-04-22 20:46 ·  中国 湖南 长沙 电信
高级用户
★★★
Credits 823
Posts 395
Joined 2006-01-28 14:56
20-year member
UID 49605
Status Offline
For some Atmel - based MP3 players, the speed of Panasonic USBASPI.sys is too slow. And DI1000DD.sys is very likely to have partition names with??? characters, failing to be driven or even directly exiting due to division errors when dealing with MP3 players.
Floor 14 Posted 2006-04-22 20:48 ·  中国 浙江 杭州 电信
银牌会员
★★★
Credits 1,582
Posts 603
Joined 2006-02-20 20:26
20-year member
UID 50690
Status Offline
Test environment: MS-DOS V8.0
It is estimated that it is a compatibility issue caused by LOADUSB.EXE.

Now there is a new problem:

How to use devload.com to uninstall the USB driver?

Please study this.
Floor 15 Posted 2006-04-22 21:33 ·  中国 山西 临汾 中移铁通
元老会员
★★★★
Batchinger
Credits 4,432
Posts 1,512
Joined 2002-10-18 00:00
23-year member
UID 19
Gender Male
Status Offline
Re martin325:

It's strange that you just discovered the command-line loading method for the USB driver now, because in the readme.txt of the dos4usb.rar you provided , it clearly states that Loadusb.exe is itself a product of batch compilation. And its command-line content description has also been given.

There isn't much substantial difference between your batch file and it, except that two parameters are missing and LH is added. Maybe your problem is exactly here. Of course, using your driver and parameters, my USB flash drive still can't be recognized.

readme.txt

1 This program is a plug-and-play USB 2.0 driver under DOS;
2 After the computer is booted with DOS, insert the USB flash drive (or before booting) into any USB port of the computer;
3 Run Loadusb.exe to load the driver of the USB flash drive, and then you can read and write the data of the USB flash drive;
4 Usbaspi.sys (version 2.2) is Panasonic's latest dos USB driver.
5 devload.com is used to load the driver program; DI1000DD.sys is used to assign drive letters; loadusb.exe is actually a batch file, and its content is:
devload usbaspi.sys
devload di1000dd.sys
※ Batchinger 致 Bat Fans:请访问 批处理编程的异类 ,欢迎交流与共享批处理编程心得!
Forum Jump: