KShell è un sostituto della finestra comandi di OS/2. Consente input/output DBCS e non, in una finestra VIO OS/2. Supporta la funzione scroll-back e la clipboard.
A note about the future of ecsoft2.org
ecsoft2.org runs on software (Drupal 7 and PHP 7.4) that reached its end of life years ago and no longer receives security updates. Keeping the site online safely is getting harder.
Giving it a future means migrating it to a current platform — and that is only worth doing if people still use it and want to help keep it alive.
If you care about ecsoft2.org, as a user, a contributor, or someone willing to lend a hand, please ggamba
tiscali [dot] it (get in touch) by January 31, 2027.
If no one comes forward by then, the site will be turned into a read-only archive, so that its content stays available.
Il programma è distribuito come pacchetto ZIP: scaricare in una cartella temporanea e scompattare nella cartella di destinazione. Vedi sotto per il(i) link di download.
Qui di seguito trovi i link di download per l'installazione manuale del software:
| KShell v. 1.0.0 (4/11/2026, KO Myung-Hun) | Readme/What's new |
KShell v1.0.0
---------------
1. Introduction
---------------
This program is intended to help Input/Output of DBCS, especially Hangul,
on VIO of non-DBCS OS/2 environment.
2. Development Environments
---------------------------
- OS/2 Warp v4 for Korean with FixPak #15
- Open Watcom v2.0.1
3. Requirement
--------------
- Appropriate fonts
- IME for input DBCS, such as KIME
4. Test Environmet
------------------
This program is tested on OS/2 Warp v4 for Korean with FixPak #15 and
ArcaOS v5.1.0GA.
5. Features
-----------
- Redirection of VIO output to PM window, hooking of OS/2 Base Video
Subsystem, and transfer key sequences of PM window to VIO, using keyboard
monitor.
- Any fonts other than System font can be used on VIO. But only fixed width
fonts are allowed.
- Codepages other than primary or secondary codepage can be specified.
- Scroll-back up to 10000 lines is supported.
- Clipboard(unicode) is supported.
- FT2LIB is supported.
- Window size change is supported.
6. Installation
---------------
Put kshell.exe, viodmn.exe and viosub.dll into any directory.
7. Usage
--------
7-1. System Menu
----------------
Codepage... : Specify codepage.
Font... : Specify font and size.
7-2. Popup Menu
---------------
Codepage... : Specify codepage.
Font... : Specify font and size.
Copy : Copy the contents of marking area to clipboard.
Copy All : Copy all the contents of the window to clipboard.
Paste : Copy from clipboard to the window.
Use FT2LIB : Specify whether to use FT2LIB or not.
7-3. Command line options
-------------------------
-rows : Set width of a window on startup
-cols : Set height of a window on startup
-sblines : Set the number of lines for a scroll-back buffer
7-4. Hot-keys
-------------
Ctrl-Up : Scroll up by a line in scroll-back mode
Ctrl-Down : Scroll down by a line in scroll-back mode
Ctrl-PgUp : Scroll up by a page in scroll-back mode
Ctrl-PgDn : Scroll down by a page in scroll-back mode
8. Limits/Known bugs
--------------------
- Only support keyboard input and VIO output. So mouse is not supported.
- Ctrl-P, and so on are not supported.
- With Q.EXE, Shift-Arrow Keys does not work.
- On FT2LIB mode, width of font can be too wide.
- On FT2LIB mode, CPU load is high on startup.
- 4OS2 crashes when changing a code page with CHCP command.
9. TODOs...
-----------
- Support mouse
- Support special key combination such as Ctrl-P.
10. History
---------------
- v1.0.0 ( 2026/11/04 )
.viodmn: Support Ctrl-S key combination
.kshell: Support -rows, -cols command line options
.kshell: Support to resize a window in runtime
.kshell: Show a window size in a title bar
.kshell: Support hot-keys for scroll-back.
.kshell: Support KSHELLOPT env var to specify options
.kshell: Support -sblines command line option
.kshell: CPU-load is always high on startup.
( Load FT2LIB only when using FT2LIB ). Fixed.
.kshell: VIODMN remains when KShell exit abnormally. Fixed.
.viodmn: KEYPAD keys of some keyboards are treated as character keys.
Fixed.
.Changed compiler to Open Watcom v2.0.1
- V0.8.1 ( 2012/02/05 )
.Performance sometimes becomes very poor. Fixed.
- v0.8.0 ( 2010/12/26 )
.viodmn : Support Pause key.
.viodmn, ft2lib : Improved the compatibility with LIBPATHSTRICT=T
.ft2lib : The return value is not defined if loading FT2LIB.DLL failed.
Fixed.
.viodmn : Named shared memories are not freed correctly. Fixed.
.Changed compiler to Open Watcom v1.8.
- v0.7.0 ( 2008/10/05 )
.Support FT2LIB.
.Support icon( Contributed by Alex Taylor ).
.Support unicode for clipboard( Contributed by Alex Taylor ).
.Clipboard is not cleared when copying to clipboard
( Reported by Alex Taylor ).
.Part of popup window can be out of screen. Fixed.
- v0.6.0 ( 2007/04/07 )
.Support VioSetMode(). So 43/50 line mode can be selected as well as 25
line mode.
.Changing font cause codepage to be changed. Fixed.
.Even though codepage is changed, DBCS initialization is not performed.
Fixed.
.XCOPY.EXE conflict with debug build. Fixed( Disabled stack overflow check
with -s option )
- v0.5.0 ( 2007/03/14 )
.Support Ctrl-C and Ctrl-Break key combination.
.Support KSHELL_COMSPEC env. var.
.donePipeThreadForVioSub() call _endthread() incorrectly. Fixed.
.On file list screen of HV.EXE with v0.4.0, blank rectangle is displayed.
Fixed.
.KShell doesn't respond to user input when scrolling heavily such as 'dir
x:\/s'. Fixed.
.KShell doesn't respond to user input if obscured fully due to the thing
like full-screen switching when scrolling. Fixed.
.'Marking' mode does not work correctly with 'Scroll-back' mode. Fixed.
.XCOPY.EXE does not work with v0.4.0. Fixed. (v0.4.0 is debug build. Debug
build has a problem, but not release build. Maybe compiler bug ?)
- v0.4.0 ( 2007/02/26 )
.'Courier New' font do not displayed correctly. Fixed.
.When 'Marking Mode', if any window cross over the marking area, that
area is not displayed correctly. Fixed.
.Changing compiler to OpenWatcom v1.6 since v0.3.0 cause vioGetBuf()
broken. Fixed.
.With font association, a 'stair problem' occur. Fixed.
.Changing scroll function cause scroll contents leak out of scroll
rectangle. Fixed.
.Occasionally, CPU load is up to 99.9% and KShell hang. Fixed(I hope^^)
- v0.3.0 ( 2007/01/01 )
.Supports clipboard.
.Minor bugs. Fixed.
.Compiler changed to Open Watcom v1.6
- v0.2.0 ( 2005/08/16 )
.Improved performance greately.
.Sometimes, a part of background is not erased. Fixed.
.When scrolling, other window cover KShell window, that part of KShell
window is not scrolled correctly. Fixed( using WinScrollWindow() instead
of GpiBitBlt()).
.HyperView( HV.EXE ) cannot be launched. Fixed( enlarging buffer size for
DosQuerySysState()).
- v0.1.0 ( 2005/02/28 )
.Use VioRegister() instead of polling method. As a result, Output
efficiency is improved.
.VIO colors are correct.
.Broken DBCS chars are displayed when inputting consecutive DBCS chars.
Fixed.
.If font size is not changed even though font face is changed, window is
not updated. Fixed.
.In case of bitmap font such as MINCHO, it is not retrieved on next time.
Fixed.
.The unit of font size is changed from pel to pt.
- test version ( 2005/01/19 )
.initial version.
11. Compilation
---------------
You have to have Open Watcom v1.8 to compile KShell.
Now, enter 'wmake' on command prompt.
12. Modules
-------------
kshell.exe : PM program that display VIO buffer on PM and pass key on PM to
VIO.
viodmn.exe : VIO full-screen program that launch a command shell specified
by 'KSHELL_COMSPEC', 'COMSPEC' and 'CMD.EXE', and interconnect
VIO and PM.
!!! viodmn.exe should be started by kshell.exe !!!
viosub.dll : DLL to hook OS/2 Base Video Subsystem.
test.exe : Key test program on VIO.
13. Thanks to...
----------------
nickk : provided me with examples for VioRegister().
14. Donation
------------
If you are satisfied with this program and want to donate to me, please visit
the following URL.
http://www.os2.kr/komh/os2factory/
Or, please click the Ads in the following blog.
https://lvzuufx.blogspot.com/
15. Contact
-----------
Please use a issue tracker of github.
https://github.com/komh/mplayer-os2/issues
KO Myung-Hun
-----------------------------------------------------------------
KShell v1.0.0
---------------
1. 소개
-------
이 프로그램은 기본적으로 비-한국어판 OS/2 환경의 VIO 프로그램에서 한글
입출력을 도와주기 위해 만들어졌습니다. OS/2 의 Base Video Subsystem 호출을
가로채어 PM 창에서 출력되도록 합니다.
2. 제작 환경
------------
- 한국어판 OS/2 Warp v4 with FixPak #15
- Open Watcom v2.0.1
3. 실행에 필요한 환경
---------------------
- 한글( 또는 해당 언어 )를 표현할 수 있는 글꼴
- 한글( 또는 해당 언어 ) 입력기. 예) KIME
4. 시험 환경
------------
한국어판 OS/2 Warp v4 with FixPak #15 와 ArcaOS v5.1.0GA 에서
시험했습니다.
5. 기능
-------
- OS/2 Base Video Subsystem 을 가로채어 PM 창에 출력하고, 키보드 모니터를
이용하여 PM 의 입력을 VIO 프로그램에 전달합니다.
- 기존의 민초(MINCHO) 글꼴 대신 시스템에서 사용가능한 모든 글꼴을 사용할 수
있습니다. 단, 고정폭 글꼴만 가능합니다.
- 코드 페이지를 따로 지정할 수 있기 때문에 한글 뿐만아니라, 해당 언어
입력기와 글꼴만 갖추어진다면 해당 언어의 문자를 입력/출력할 수 있습니다.
- 다시 보기(Scroll-Back) 기능을 최대 10000줄까지 지원합니다.
- 클립보드(유니코드)를 지원합니다.
- FT2LIB 을 지원합니다.
- 창 크기를 임의로 바꿀 수 있습니다.
6. 설치
-------
kshell.exe, viodmn.exe, viosub.dll 을 아무 디렉토리에 같이 넣어두시면
됩니다.
7. 사용법
---------
7-1. 시스템 메뉴
----------------
Codepage... : 코드 페이지를 지정합니다.
Font... : 글꼴의 종류와 크기를 지정합니다.
7-2. 팝업 메뉴
--------------
Codepage... : 코드페이지를 지정합니다.
Font... : 글꼴의 종류와 크기를 지정합니다.
Copy : 표시된 내용을 클립보드로 복사합니다.
Copy All : 화면의 모든 내용을 클립보드로 복사합니다.
Paste : 클립보드에 있는 내용을 화면으로 복사합니다.
Use FT2LIB : FT2LIB 사용 여부를 지정합니다.
7-3. 명령행 옵션
----------------
-rows : 시작할 때 창의 높이를 지정합니다(최소 10).
-cols : 시작할 때 창의 폭을 지정합니다(최소 40, 최대 132)
-sblines : 스크롤백 버퍼의 줄 수를 지정합니다(최소 1, 기본 1000, 최대 10000)
7-4. 단축키
-----------
Ctrl-Up : 스크롤백 모드에서 한 줄 위로 올림
Ctrl-Down : 스크롤백 모드에서 한 줄 아래로 내림
Ctrl-PgUp : 스크롤백 모드에서 한 쪽 위로 올림
Ctrl-PgDn : 스크롤백 모드에서 한 쪽 아래로 내림
8. 제한 사항 또는 알려진 벌레
-----------------------------
- 키보드 입력과 출력만을 지원합니다. 따라서 마우스 기능은 지원되지
않습니다.
- Ctrl-P 같은 특수키 조합이 지원되지 않습니다.
- Q.EXE 에서 Shift-방향키 조합이 작동하지 않습니다.
- FT2LIB 모드일 경우, 글꼴의 가로 폭이 지나치게 넓어지는 경우가 있습니다.
- FT2LIB 모두일 경우, 시작할 때 CPU 점유율이 높아집니다.
- 4OS2에서 CHCP 명령어를 실행하면 4OS2가 죽습니다.
9. 할 것들...
-------------
- 마우스를 지원한다.
- 특수키 조합을 지원한다.
10. 판번호 보기
---------------
- v1.0.0 ( 2026/11/04 )
.viodmn: Ctrl-S 특수키 조합을 지원합니다.
.kshell: -rows, -cols 명령행 옵션을 지원합니다.
.kshell: 실행 중에 창 크기를 바꿀 수 있습니다.
.kshell: 타이틀 바에 창 크기를 표시합니다.
.kshell: Ctrl+Shift+Up, Down, PgUp, PgDn으로 스크롤백을 쓸 수 있습니다.
.kshell: KSHELLOPT 환경 변수로 명령행 옵션을 지정할 수 있습니다.
.kshell: -sblines 명령행 옵션을 지원합니다.
.kshell: 항상 FT2LIB을 활성화하느라 시작할 때 CPU 부하가 높아집니다.
( FT2LIB을 사용할 때만 활성화함 ). 고침.
.kshell: KShell이 비정상적으로 종료할 때 VIODMN이 남아 있습니다. 고침.
.viodmn: 일부 키보드의 키패드 키들을 일반 문자키로 인식합니다. 고침.
.컴파일러를 Open Watcom v2.0.1로 바꾸었습니다.
- v0.8.1 ( 2012/02/05 )
.때때로 성능이 매우 느려집니다. 고침.
- v0.8.0 ( 2010/12/26 )
.viodmn: Pause 키를 지원합니다.
.viodmn, ft2lib : LIBPATHSTRCIT=T 와의 호환성을 개선했습니다.
.ft2lib : FT2LIB.DLL 를 로드하지 못했을 때 반환값이 일정하지 않습니다.
고침.
.viodmn : 이름 있는 공유 메모리가 올바르게 해제되지 않습니다. 고침.
.컴파일러를 Open Watcom v1.8 로 바꾸었습니다.
- v0.7.0 ( 2008/10/05 )
.FT2LIB 을 지원합니다.
.아이콘을 포함했습니다( Alex Taylor 씨 기여 ).
.클립보드에서 유니코드를 지원합니다( Alex Taylor 씨 기여 ).
.클립보드에 복사할 때 기존 클립보드 내용이 지워지지 않습니다
( Alex Taylor 씨 제보 ). 고침.
.화면 경계에서 팝업 메뉴 일부가 화면 밖으로 나갑니다. 고침.
- v0.6.0 ( 2007/04/07 )
.VioSetMode() 를 지원합니다. 따라서 25 줄뿐만 아니라 43/50 줄도 지원합니다.
.글꼴을 바꾸면 코드페이지도 함께 바뀝니다. 고침.
.코드 페이지가 바뀌더라도 DBCS 초기화가 되지 않습니다. 고침.
.XCOPY.EXE 는 디버그 빌드에서 실행되지 않습니다. 고침( 스택 오버플로우
체크를 껐습니다. -s 옵션 추가 )
- v0.5.0 ( 2007/03/14 )
.Ctrl-C, Ctrl-Break 특수키 조합을 지원합니다.
.KSHELL_COMSPEC 환경 변수를 지원합니다.
.donePipeThreadForVioSub()에서 _endthread()가 잘못 호출됩니다. 고침.
.v0.4.0 에서 HV.EXE 파일 목록 화면에 빈 사각형이 나타납니다. 고침.
.'다시 보기' 상태에서 '표시' 기능이 올바르게 작동하지 않습니다. 고침.
.과도하게 스크롤이 진행되는 상황(예, DIR x:\/s)에서 글쇠를 입력하면 KShell
이 반응하지 않습니다. 고침.
.스크롤 도중에 화면 전환 따위로, KShell 창 전체가 가려지면 KShell 이
반응하지 않습니다. 고침.
.v0.4.0 에서 XCOPY.EXE 가 작동하지 않습니다. 고침. (v0.4.0 은 디버그 빌드가
배포하였는데, 디버그 빌드에서 문제 발생. 릴리즈 빌드에서는 문제없음.
컴파일러 벌레일지도...)
- v0.4.0 ( 2007/02/26 )
.'Courier New' 글꼴은 올바르게 표시되지 않습니다. 고침.
.'Marking Mode' 일 경우, 다른 윈도우에 가려졌던 일부가 올바르게 표시되지
않습니다. 고침.
.v0.3.0 에서 컴파일러를 바꾸면서, vioGetBuf()가 올바르게 작동하지
않습니다. 고침
.글꼴 연관 기능이 쓰일 경우 계단 현상이 나타납니다. 고침.
.v0.2.0 에서 스크롤 함수를 바꾸면서, 스크롤 내용이 스크롤 범위 밖으로
흘러 나옵니다. 고침.
.때때로 CPU 점유율이 올라가면서 멈춥니다. 고침(희망사항^^)
- v0.3.0 ( 2007/01/01 )
.클립보드를 지원합니다.
.사소한 벌레들을 잡았습니다.
.컴파일러를 Open Watcom v1.6 으로 바꾸었습니다.
- v0.2.0 ( 2005/08/16 )
.성능이 대폭 향상되었습니다.
.배경색이 다를 경우, 잔상이 남을 수 있습니다. 고침.
.화면이 스크롤 될 때, KShell 창의 일부가 다른 창으로 가려지게 되면,
KShell 창에 다른 창의 내용이 나타납니다. 고침(GpiBitBlt() 대신
WinScrollWindow() 사용).
.HyperView( HV.EXE ) 는 실행이 되지 않습니다. 고침(DosQuerySysState()의
버퍼 크기를 늘림).
- v0.1.0 ( 2005/02/28 )
.폴링(Polling) 기법 대신 VioRegister() 이용하여, 출력 속도가 빨라졌습니다.
.VIO 색상이 올바르게 표시됩니다.
.DBCS 문자를 연속해서 입력할 경우, 깨진 글자가 나타납니다. 고침.
.글꼴이 바뀌어도 크기가 바뀌지 않으면 화면이 갱신되지 않습니다. 고침.
.비트맵 글꼴( 예, MINCHO )의 경우, 다음 실행때 제대로 지정되지 않습니다.
고침.
.글꼴 크기를 pel 단위에서 pt 단위로 바꾸었습니다.
- test version ( 2005/01/19 )
.시험판
11. 소스 컴파일 하기
--------------------
소스를 컴파일하기 위해서는 Open Watcom v1.8 이 필요합니다.
이 모든 것이 준비되었다면, 해당 디렉토리에서 'wmake' 를 실행하시면 됩니다.
12. 모듈 설명
-------------
kshell.exe : VIO 의 내용을 PM 상에 뿌려주고, PM 의 입력을 VIO 에 전해주는
프로그램 본체.
viodmn.exe : 'KSHELL_COMSPEC', 'COMSPEC', 'CMD.EXE' 순으로 명령셸을
실행시키고, VIO 와 PM 을 연결해주는 프로그램.
!!! 단독으로 실행될 수 없습니다 !!!
viosub.dll : OS/2 Base Video Subsystem 을 가로채기 위한 DLL 입니다.
test.exe : VIO 상에서 키가 입력되었을 때 키에 대한 정보를 알려주는
프로그램.
13. 고마운 분들...
------------------
nickk : VioRegister() 를 사용하기 위한 예제를 제공해 주셨습니다.
14. 후원하기
------------
이 프로그램이 마음에 들어 후원하고 싶으시면, 아래 URL 을 방문해 주십시오.
https://www.os2.kr/komh/os2factory/
또는 다음 블로그에서 광고를 클릭해 주십시오.
https://lvzuufx.blogspot.com/
15. 하고 싶은 말이 있을 때...
-----------------------------
github 의 이슈 트래커를 이용해 주십시오.
https://github.com/komh/kshell/issues
만든이 : 고명훈 |
hobbesgram.org/download/os2/util-12/shell-2/kshell100.zip |
local copy
|
|
| KShell v. 0.8.1 (5/2/2012, KO Myung-Hun) | ||
hobbes.nmsu.edu/download/pub/os2/util/shell/kshell081.zip |
local copy
|

This work is licensed under a Creative Commons Attribution 4.0 International License.
Aggiungi un commento