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-24 14:35
中国DOS联盟论坛 » DOS汉化世界 & 中文系统 (中文化室) » Parallel Configuration Menu for Config.sys ConfigP.Mnu v4.02 View 11,728 Replies 58
Original Poster Posted 2009-04-07 04:05 ·  中国 山西 太原 联通
银牌会员
★★★
Credits 1,009
Posts 353
Joined 2003-09-04 00:00
22-year member
UID 9419
Gender Male
Status Offline
### Features
1. Common configuration menus are executed step by step and cannot be returned, like a series. When the nesting level is large, the menu items will show a trend of being magnified by the level, making menu writing more cumbersome and having more repeated items. This configuration menu is in a parallel relationship, the menu writing is concise, and the readability is strong, providing greater flexibility for menu interface layout.
2. All selectable items are arranged on 1 interface, which is convenient to read and select quickly.
3. Works in 800×600 16-bit enhanced color (mode 114).
4. Can load jpg format background images. If no background image is loaded, it is replaced by the background color.
5. Can load Chinese character fonts (hzk16/gbk16 fonts, compressed/non-compressed fonts, built-in fonts), and embed Chinese and English character display programs, providing a good platform for displaying Chinese menus.
6. Can shield the display information in the processing of Config.sys.

### Brief Description
1. Option groups are divided into 2 types: check-type option groups (CheckOption), and radio-type option groups (RadioOption).
- Check-type option groups are used to load compatible drivers, and can be not selected or all selected.
- Radio-type option groups are used to load mutually exclusive drivers, and 1 item should be selected and only 1 item can be selected.
2. Items are divided into 2 types: pre-load items (LoadItem), and ordinary items (Item).
- Pre-load items are the items that are loaded by default at startup.
3. Items can be associated, and there are 2 types: selected association (relate), and unselected association (unrelate).
- Selected association: The master control is selected, and the controlled one is valid.
- Unselected association: The master control is selected, and the controlled one is invalid.
- If it is valid, it can be selected, and then there are selected/unselected distinctions.
- If it is invalid, it cannot be selected, and all are treated as unselected.
- Using selected association, multi-level menus can be composed. Using unselected association, relevant items can be shielded.
4. Configuration block (block) is a group of drivers organized together as needed. Parameters can be set in the configuration block, and 'AutoExec.bat' can be remotely controlled. Public configuration blocks can be placed before 'block=0' and after 'block=end'.
5. If no Chinese font is loaded, English is displayed.

### Usage Method
1. Option group selection method
- Press Tab or ` key
2. Item selection method
- Cycle selection in order by pressing the direction keys
3. Item setting method
- Check-type option group: Press space or Enter key to select/clear
- Radio-type option group: While pressing the direction key, it is selected
4. Menu exit method
- Press Esc or Backspace key
- When there is only 1 group of radio-type option groups, press space or Enter key
- Select the 'Exit' button, press space or Enter key
5. Switch parameters
- /s: Shield the display information of config.sys.
- /u: Remove the shield.
6. English letter case conversion
- In the same line, it is uppercase by default, and converted when encountering ^.
- Example: c^onfig^p.m^nu is displayed as ConfigP.Mnu

### Syntax Description
1. Option group
; Option group sequence number CheckOption=upper left x, upper left y, lower right x, lower right y=item arrangement=label color, label content
; Option group sequence number RadioOption=upper left x, upper left y, lower right x, lower right y=item arrangement=label color, label content
Option group type CheckOption check-type option group; RadioOption radio-type option group
Option group sequence number 0-99 sequential numbering
Option group range Upper left is the origin, horizontal pixel x(0-799), vertical pixel y(0-599)
Item arrangement Number of columns in 1 line(1,2,3,...)
Label color Red(00-ff) Green(00-ff) Blue(00-ff)
Label content
Example: =100,100,700,140=3=ffff00, Upper memory management
=100,170,700,250=4=, Load CD-ROM driver
2. Item color
; color=background color of unselected item, foreground color of unselected item, background color of selected item, foreground color of selected item
Default Black, White, White, High White
Background/foreground color Red(00-ff) Green(00-ff) Blue(00-ff)
Background color of unselected item is also the screen background (when no image is loaded or part of the image is loaded)
When background color of unselected item = background color of selected item, when loading the image, the characters use the image as the background
When background color of unselected item ≠ background color of selected item, when loading the image, the characters use the background color of selected item instead of the image background
Example: =000000,808080,808080,ffffff
=000080,808080,000080,ffffff
3. Font
; rem font=font name
Font type hzk16/gbk16 compressed/non-compressed built-in font (can be used for any language)
Font name Can have a path
Built-in font format Offset Length Description
00 2 bytes Number of characters(x)
02 2x bytes Character internal code(8100-ffff)
2x+02 32x Character dot matrix image, horizontal bit reversal
Note: 16j.dot/16g.dot are attached as compressed hzk16/gbk16 fonts
Mkfon.com can be used to generate built-in fonts in this version
Example: =16g.dot
4. Dynamic item prompt
; rem prompt=column=prompt color
Default 8 columns, foreground color of selected item
Prompt position Column(1-83) Line at the time position
Prompt color Red(00-ff) Green(00-ff) Blue(00-ff)
Example: =3=ff0000
==ff0000
=
5. Waiting time
; time=line=time, label
Default 33 lines 60 seconds
Time position Line(1-33)
Time length Seconds(0-60)
Time label "Remaining time"
Example: =32=30, Remaining time
=32=30
=32
=
6. Background image
; image=horizontal pixel offset, vertical pixel offset=name
Default Offset 0,0
Image position Upper left is the origin(0,0), horizontal pixel(0-799), vertical pixel(0-599)
Image name jpg format, maximum pixel 800*600
Example: =0,0=lt.jpg
==lt.jpg
=500,100=xy.jpg
7. Association
; relate=master control item sequence number, master control item sequence number,...=controlled item sequence number, controlled item sequence number,...
Association type relate selected association, unrelate unselected association
Example: =1=3,4 =1,2=3,4
8. Comment
; note=line, column=comment color, comment content
Comment position Line(1-33), column(1-100)
Comment color Red(00-ff) Green(00-ff) Blue(00-ff)
Comment content
Example: =2,20=800000, Chinese MSDOS_7.1 boot disk
=2,20=, Chinese MSDOS_7.1 boot disk
9. Item
; Item sequence number LoadItem=configuration block sequence number, configuration block sequence number,...=item title=item dynamic prompt
; Item sequence number Item=configuration block sequence number, configuration block sequence number,...=item content
Item sequence number 0-99 sequential numbering
Configuration block sequence number The configuration blocks included in this item
Item title
Item dynamic prompt
Example: LoadItem=0,9=Load umbpci=Use upper memory
10. Configuration block
; block=configuration block sequence number
....
; block=end
Configuration block sequence number 0-99 sequential numbering
end Configuration block end symbol
Example: ; block=0
decice=umbpci.sys
set cm=cdrom
; block=1
decice=emm386.exe
...
; block=end

### Other Instructions
1. rem can be replaced by '; '.
2. The label color of the option group (or the comment content color), when all are default, is processed according to the foreground color of the unselected item, otherwise it is processed according to the label color of the previous option group (or the comment content color).
3. The color can refer to the 'web_216 color table', but is not limited to this table.

Example 1: Features Multi-option groups, load full-screen image
When selecting the 2nd item "Minimum load", the 3rd-20th items are shielded
device=ConfigP.Mnu /s

; color=000099,bbbbbb,000099,ffffff
; prompt=12=ff33ff
; time=32=10, Remaining time
; image=0,0=lt.jpg
; font=16g.dot
; note=2,40=00ffff, Chinese MSDOS_7.1 boot disk
; note=3,30=, ─────────────────────
; note=33,29=00ff00, Press T^ab to select item group, press direction key to select item, press Enter to change

; unrelate=2=3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20

; 0RadioOption=100,100,700,140=3=ffcc00, Upper memory management
; 0LoadItem=0,20=umbpci=Use upper memory
; 1item=1,20=emm386=Use upper memory, expand memory
; 2item=21=Minimum system

; 1CheckOption=100,170,700,250=4=, Load CD-ROM driver
; 3LoadItem=2=udvd
; 4Item=3=qcdrom
; 5Item=4=gcdrom
; 6Item=5=uide
; 7item=6=vide-cdd
; 8item=7=aspicd
; 9item=8=usbcd

; 2CheckOption=100,280,700,320=4=, Load usb driver
; 10item=9=usbaspi
; 11item=10=di1000dd
; 12item=11=aspiohci
; 13item=12=aspiuhci

; 3CheckOption=100,350,700,450=4=, Item support
; 14Loaditem=13=Long file name
; 15Loaditem=14=Chinese=Load acios, support gbk
; 16Loaditem=15=Mouse
; 17item=16=Cache=When installing Windows under DOS, you must run this disk cache program first to speed up the installation.
; 18item=17=Vpc9x file sharing=Share folder in vpc5.2
; 19item=18=Vpc2k7 file sharing=Share folder in vpv2007
; 20item=19=NTFS partition=NTFS partition read and write support

device=himem.sys
; block=0
device=umbpci.sys
; block=1
device=emm386.exe NOEMS
; block=2
device=udvd.sys /d:udv-cd
; block=3
device=qcdrom.sys /d:qcd-cd
; block=4
device=gcdrom.sys /d:gcd-cd
; block=5
DEVICE=uide.sys /s40 /d:uid-cd
; block=6
device=vide-cdd.sys /d:vid-cd
; block=7
device=aspicd.sys /d:asp-cd
; block=8
device=usbcd.sys /d:usb-cd
; block=9
device=usbaspi.sys /r /NORST
; block=10
device=di1000dd.sys
; block=11
device=aspiohci.sys /int /all
; block=12
device=aspiuhci.sys /int /all
; block=13
set cwjm=1
; block=14
set zw=1
; block=15
set sb=1
; block=16
set gshc=1
; block=17
set vpc=1
; block=18
set vpc=2
; block=19
set ntfs=1
; block=20
dos=high,umb,auto
; block=21
set zx=1

; block=end

fcbshigh=4,0
fileshigh=30
buffershigh=30,0
lastdrive=z
device=ConfigP.Mnu /u


Corresponding autoexec.bat
@echo off
set DIRCMD=/O:N /O:G /P /4
path=a:\;c:\;z:\

if not %zx%#==1# goto cwjm
set zx=
goto end

:cwjm
if not %cwjm%#==1# goto sb
LFNFOR ON
DOSLFN /C- /Z:CP936UNI.TBL > nul
set cwjm=

:sb
if not %sb%#==1# goto gshc
ctmouse > nul
mousclip > nul
set sb=

:gshc
if not %gshc%#==1# goto vpc1
smartdrv /X 4096 2048 > nul
set gshc=

:vpc1
if not %vpc%#==1# goto vpc2
fshare98 > nul
:: idle > nul
set vpc=
goto ntfs

:vpc2
if not %vpc%#==2# goto ntfs
fshare07 > nul
set vpc=

:ntfs
if not %ntfs%#==1# goto zw
call nt.bat > nul
set ntfs=

:zw
if not %zw%#==1# goto gg
call ac.bat > nul
set zw=

:gg
doskey > nul
SHCDX33c /d:?udv-cd /d:?qcd-cd /d:?gcd-cd /d:?uid-cd /d:?vid-cd /d:?asp-cd /d:?usb-cd > nul
ansi > nul
call m.bat

:end


Example 2: Features Only 1 group of radio-type option groups, load partial image
device=ConfigP.Mnu /s

; color=0000bb,bbbbbb,0000bb,ffffff
; time=31=10, Remaining time
; prompt=8=ff33ff
; font=16g.dot
; image=500,100=xy.jpg
; note=2,40=00ffff, Chinese MSDOS_7.1 boot disk
; note=3,30=, ─────────────────────
; note=33,38=00ff00, Press direction key to select item, press Enter to execute

; RadioOption=100,100,450,500=1=cccc00, Select boot mode
; item=0=Protected mode Load EMM386=Use upper memory
; item=0,2,4=Protected mode Load EMM386 and CD-ROM
; item=0,2,3,4=Protected mode Load EMM386, CD-ROM and USB
; item=1=Real mode Load UMBPCI
; LoadItem=1,2,4=Real mode Load UMBPCI and CD-ROM
; item=1,2,3,4=Real mode Load UMBPCI, CD-ROM and USB

device=himem.sys
; block=0
device=emm386.exe noems
; block=1
device=umbpci.sys
; block=2
devicehigh=vide-cdd.sys /d:ide-cd
devicehigh=aspicd.sys /d:scsi-cd
; block=3
device=usbcd.sys /d:usb-cd
device=usbaspi.sys /r
device=aspiohci.sys /int /all
device=aspiuhci.sys /int /all
device=di1000dd.sys
; block=4
set cdrom=1
; block=end

dos=high,umb,auto
fcbshigh=4,0
fileshigh=30
buffershigh=30,0
lastdrivehigh=32
stackshigh=9,256

device=ConfigP.Mnu /u

Example 3: Features Multi-level selection
When selecting the 0th item "DOS Toolbox", the 3rd and 4th items are valid (can be selected)
......
; relate=0=3,4

; RadioOption=100,100,700,140 6,8,10,72=3=ffcc00, Select type
; 0Item==DOS Toolbox
; 1Loaditem=0=Pure DOS
; 2item=3=Jiangmin antivirus

; RadioOption=100,225,700,265=2=ffcc00,DOS Toolbox
; 3LoadItem=1=ghost8.3
; 4item=2=Chinese version DM
........
; block=0
set config=dos
; block=1
set config=ghost
; block=2
set config=dm
; block=3
set config=jm
........


v4.00 2009/4/6
Modified: Changed from display mode 111 (640×480 16-bit enhanced color) to display mode 114 (800×600 16-bit enhanced color) to accommodate more information
Added: Font format, can load hzk16, gbk16 fonts, can load compressed, non-compressed fonts, can load built-in fonts
Added: Dynamic item prompt, convenient for detailed description of item usage
Modified: Can be used normally in virtual machine VM
Modified: The option group position is determined by pixels instead of rows and columns
Modified: Uses protected mode internally, no need to pre-load himem.sys in advance
Modified: The button text is changed from "Continue" to "OK"
Modified: Association algorithm

v4.01 2009/4/26
Modified: Up and down direction keys can move in this column, left and right direction keys can move across rows
Corrected: The number of characters in the item title is limited
Improved: Compatibility with virtual machine

v4.02 2009/5/11
Modified: The association expression can set multiple masters
[ Last edited by yaya on 2009-5-11 at 23:13 ]
Attachments
MS-DOS-2009-04-07-15-06-31.png
MS-DOS-2009-04-07-15-06-59.png
ConfigP4.02.part1.rar (292.97 KiB, Downloads: 331)
ConfigP4.02.part2.rar (292.97 KiB, Downloads: 304)
ConfigP4.02.part3.rar (93.57 KiB, Downloads: 213)
Floor 2 Posted 2009-04-07 10:03 ·  中国 江苏 苏州 电信
银牌会员
★★★
Credits 2,227
Posts 790
Joined 2005-01-27 00:00
21-year member
UID 35703
Gender Male
Status Offline
Hello! It's more powerful and maintains its own characteristics.

What is your algorithm for reading GBK?

The calculation formulas used by my vtGBK.com and vtMagi?.com are as follows:

; Assume the high byte of the Chinese character is in AH/ch1 and the low byte is in AL/ch2,
; rec = A + (AH - B) * C + (AL - D) - (AL \ 80h)
; if AH > A0h then
; if AL > A0h then '1-94:A1~FE || A1~FE
; rec = (AH - A1h) * 94 + (AL - A1h)
; else '159-254:A1~FE || 40~A0
; rec = 94 * 94 + 32 * 94 + 32 * 96 + (AH - A1h) * 96 + (AL - 40h) - (AL \ 128)
; endif;8836 3008 3072
; else ;11844 14916
; if AL > A0h then '95-126:81~A0 || A1~FE
; rec = 94 * 94 + (AH - 81h) * 94 + (AL - A1h)
; else '127-159:81~A0 || 40~A0
; rec = 94 * 94 + 32 * 94 + (AH - 81h) * 96 + (AL - 40h) - (AL \ 128)
; endif
; endif
my major is english----my love is dos----my teacher is the buddha----my friends--how about U
Floor 3 Posted 2009-04-07 21:31 ·  中国 山西 太原 联通
银牌会员
★★★
Credits 1,009
Posts 353
Joined 2003-09-04 00:00
22-year member
UID 9419
Gender Male
Status Offline
((ch1 - 81) * be + (ch2 - 40) - ch2 / 80) * 2 * 10

Note: The original content is already in English-like expression with some variable names. Since there's no actual Chinese text to translate here, just present the original expression as is.
Floor 4 Posted 2009-04-08 13:17 ·  中国 广西 贺州 联通
初级用户
★★
Credits 188
Posts 84
Joined 2008-12-25 16:20
17-year member
UID 134893
Gender Male
Status Offline
Finally see the new version released.
Strongly support, super like your parallel menu.
Don't know what new features and changes are in this update.

[ Last edited by xiaolongkun0 on 2009-4-8 at 13:33 ]
Floor 5 Posted 2009-04-08 20:12 ·  中国 广西 贺州 联通
初级用户
★★
Credits 188
Posts 84
Joined 2008-12-25 16:20
17-year member
UID 134893
Gender Male
Status Offline
Great! In similar software, yaya's stuff is almost perfect I wonder if the "OK" button can be hidden. When the style is changed, this button can't be changed with the style, which may cause visual disharmony as a whole.

[ Last edited by xiaolongkun0 on 2009-4-8 at 20:15 ]
Attachments
2009-04-09_070429.gif
Floor 6 Posted 2009-04-08 20:33 ·  中国 广西 贺州 联通
初级用户
★★
Credits 188
Posts 84
Joined 2008-12-25 16:20
17-year member
UID 134893
Gender Male
Status Offline
A problem with relate usage
; relate=7=17
; unrelate=0=6,8,9,10
; unrelate=1=4,5,7
; unrelate=2=4,5,7
; unrelate=3=4,5,6,8,9
; unrelate=19=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18
; unrelate=20=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18

; radiooption=56,107,726,152=4=ffffff,M^emory management(^HMA,H^igh memory area)
; 0loaditem=0=umbpci
; 1item=1=qhimem
; 2item=2=himem
; 3item=3=none

; radiooption=56,175,726,242=4=ffffff,M^emory management(^UMB,U^pper memory block)
; 4item=4=h-himem
; 5loaditem=5=h-qhimem
; 6item=6=umbpci
; 7item=7=xmgr
; 8item=8=emm386 noems
; 9item=9=emm386 ram
; 10item=10=none

; checkoption=56,264,236,309=1=ffffff,U^ltra ^DMA
; 11item=11=h-qdma

; radiooption=246,264,726,309=3=ffffff,d^isk ^c^ache
; 12loaditem=12=h-qcache
; 13item=13=smartdrv
; 14item=14=none

; radiooption=56,331,726,376=4=ffffff,cdrom
; 15loaditem=15=h-qcdrom
; 16item=16=h-vide-cdd
; 17item=17=h-uide
; 18item=18=none

; radiooption=56,399,726,443=3=ffffff,o^ther
; 19item=19=restart
; 20item=20=shutdown
; 21loaditem=21=none

When 7 is activated in "automatic selection mode", 17 is not successfully activated, that is, relate=7=17 has no effect. To successfully activate 17, 7 must be activated in "manual selection mode" to achieve the purpose.
According to the above analysis, in the first row of the UMA part, when NONE, XMGR is automatically activated in the second row. At this time, H-UIDE should be selectable, but it is dim. relate=7=17 has no effect. Then switch to XMGR, and switch the direction key again, H-UIDE can be activated, and then relate=7=17 takes effect.

[ Last edited by xiaolongkun0 on 2009-4-8 at 20:39 ]
Floor 7 Posted 2009-04-08 22:31 ·  中国 山西 太原 联通
银牌会员
★★★
Credits 1,009
Posts 353
Joined 2003-09-04 00:00
22-year member
UID 9419
Gender Male
Status Offline
It seems there are still some issues with the association. Thanks for xiaolongkun0's test.
Floor 8 Posted 2009-04-09 01:32 ·  中国 四川 达州 电信
初级用户
Credits 30
Posts 12
Joined 2005-12-15 12:40
20-year member
UID 47180
Status Offline
Push it up, good stuff!!!!!
Floor 9 Posted 2009-04-10 07:22 ·  中国 台湾 桃园市 中华电信
初级用户
Credits 41
Posts 22
Joined 2006-05-25 20:22
20-year member
UID 55996
Status Offline
The Chinese display effect is quite good, but the background image still loads slowly compared to the previous 3 versions. Does this new version 4 support traditional Chinese or other languages?

[ Last edited by chen463 on 2009-4-10 at 07:24 ]
Attachments
410.GIF
Floor 10 Posted 2009-04-12 22:09 ·  中国 山西 太原 联通
银牌会员
★★★
Credits 1,009
Posts 353
Joined 2003-09-04 00:00
22-year member
UID 9419
Gender Male
Status Offline
GBK supports traditional Chinese characters. For other languages, you can use the built-in font.
Floor 11 Posted 2009-04-13 00:57 ·  中国 山西 太原 联通
银牌会员
★★★
Credits 1,009
Posts 353
Joined 2003-09-04 00:00
22-year member
UID 9419
Gender Male
Status Offline
Modified the related algorithm, republished on the first floor.
Floor 12 Posted 2009-04-13 20:08 ·  中国 广西 贺州 联通
初级用户
★★
Credits 188
Posts 84
Joined 2008-12-25 16:20
17-year member
UID 134893
Gender Male
Status Offline
It's really fast.
I tested it first.

[ Last edited by xiaolongkun0 on 2009-4-13 at 20:15 ]
Floor 13 Posted 2009-04-18 03:07 ·  中国 广东 揭阳 电信
初级用户
Credits 84
Posts 39
Joined 2009-02-01 21:06
17-year member
UID 137797
Gender Male
Status Offline
Tried the latest revised version 4.0, one bug and two suggestions:

BUG:
Since the new version uses a resolution of 800×600, the item titles in the menu do not seem to be able to be displayed after exceeding 640...

Suggestions:
In terms of relate selected association and unrelate unselected association, it is hoped that multiple main control item sequence numbers can be specified at one time, such as unrelate=1,2,3=4,5,6. It is tested that only one main control item sequence number can be specified at a time, and the above example only specifies 1, while 2 and 3 are invalid...

In terms of direction key selection, it is hoped that up, down, left and right can be selected randomly. Currently, it seems that only up & left and down & right can be used to move the menu items up or down, and the movement mode is horizontal, unable to move vertically... That is, for example, when the items are arranged as 2 and the item titles are 4, you cannot directly move from 1 down to 3, and you must pass through 2 to reach 3...
Floor 14 Posted 2009-04-18 06:34 ·  中国 广西 河池 电信
新手上路
Credits 6
Posts 3
Joined 2006-09-24 08:25
19-year member
UID 63524
Status Offline
A beautiful interface will lead the DOS toolbox into a heyday period
Floor 15 Posted 2009-04-18 12:06 ·  中国 广西 贺州 联通
初级用户
★★
Credits 188
Posts 84
Joined 2008-12-25 16:20
17-year member
UID 134893
Gender Male
Status Offline
Originally posted by VeDe at 2009-4-18 03:07:
Tried the latest revised version 4.0, there are one bug and two suggestions:
BUG:
Because the new version uses a resolution of 800×600, however, the menu item titles after exceeding 640 do not seem to be able to be displayed...

Post the code to take a look, actually the coordinates of this version are different from the previous version.
Forum Jump: