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 07:33
中国DOS联盟论坛 » DOS开发编程 & 发展交流 (开发室) » The Terminator of DOS Interface Development View 94,225 Replies 290
Floor 61 Posted 2005-11-01 11:19 ·  中国 广东 深圳 电信
高级用户
★★
Credits 668
Posts 295
Joined 2005-07-26 00:00
20-year member
UID 41110
Gender Male
From 广东深圳
Status Offline
URL: http://www.firstsail.b2b.cn
Location:
Top-left corner of the homepage -> -> -> ->

The freely downloadable programming library is a development package for CPUs above 80386 with floating-point processors used under the BC31 compiler!
Floor 62 Posted 2005-11-02 19:30 ·  中国 云南 红河哈尼族彝族自治州 电信
初级用户
Credits 43
Posts 26
Joined 2005-10-07 11:08
20-year member
UID 43188
Status Offline
This programming library is really good, but it's a pity that it doesn't support true color, only 256 colors. It would be great if it could be written with djgpp + allegro to support true color.
Floor 63 Posted 2005-11-02 23:18 ·  中国 辽宁 朝阳 联通
铂金会员
★★★★
痴迷DOS者
Credits 5,798
Posts 1,924
Joined 2003-06-20 00:00
23-year member
UID 5583
Gender Male
From 金獅電腦軟體工作室
Status Offline
Support original works!
熟能生巧,巧能生精,一艺不精,终生无成,精亦求精,始有所成,臻于完美,永无止境!
金狮電腦軟體工作室愿竭诚为您服务!
QQ群:8393170(定期清理不发言者)
个人网站:http://www.520269.cn
电子邮件:doujiehui@vip.qq.com
微信公众号: doujiehui
Floor 64 Posted 2005-11-03 12:42 ·  中国 广东 深圳 宝安区 电信
高级用户
★★
Credits 668
Posts 295
Joined 2005-07-26 00:00
20-year member
UID 41110
Gender Male
From 广东深圳
Status Offline
The default extended memory space for saving window backgrounds in WinSail currently is 2 megabytes.

Of course, you can modify the unpublicized "key values" configured in Config.Sys to increase the space.

Under 16 colors (4-bit)
640 * 480 -> 154K bytes, can open 12 full windows that need to save window backgrounds simultaneously
800 * 600 -> 240K bytes, can open 8 full windows that need to save window backgrounds simultaneously
1024 * 768 -> 393K bytes, can open 4 full windows that need to save window backgrounds simultaneously

Under 256 colors (8-bit)
640 * 480 -> 308K bytes, can open 6 full windows that need to save window backgrounds simultaneously
800 * 600 -> 480K bytes, can open 4 full windows that need to save window backgrounds simultaneously
1024 * 768 -> 786K bytes, can open 2 full windows that need to save window backgrounds simultaneously

Under 65536 colors (16-bit):
640 * 480 -> 615K bytes, can open 6 full windows that need to save window backgrounds simultaneously
800 * 600 -> 960K bytes, can open 4 full windows that need to save window backgrounds simultaneously
1024 * 768 -> 1572K bytes, can open 1 full window that needs to save window backgrounds simultaneously

Under true color (24-bit):
640 * 480 -> 924K bytes, can open 1 full window that needs to save window backgrounds simultaneously
800 * 600 -> 1440K bytes, can open 1 full window that needs to save window backgrounds simultaneously
1024 * 768 -> 2304K bytes, cannot open full windows that need to save window backgrounds

The purpose of developing based on WinSail V2.0 is for industrial use. The memory and hard disk space of many target motherboards are limited, especially in PC104 motherboards. Therefore, WinSail currently has no plan to support true color!
Floor 65 Posted 2005-11-03 14:25 ·  中国 云南 红河哈尼族彝族自治州 个旧市 电信
初级用户
Credits 43
Posts 26
Joined 2005-10-07 11:08
20-year member
UID 43188
Status Offline
It's such a pity. Why not make it universal and directly in true color?
Floor 66 Posted 2005-12-01 08:58 ·  中国 广东 肇庆 四会市 电信
初级用户
Credits 117
Posts 6
Joined 2003-12-20 00:00
22-year member
UID 14238
Gender Male
Status Offline
A very good DOS development toolkit, is it free? What's the matter with that online ordering?
Floor 67 Posted 2005-12-01 20:27 ·  中国 江苏 苏州 吴江区 电信
初级用户
Credits 32
Posts 16
Joined 2005-11-28 18:19
20-year member
UID 46122
Status Offline
Do you have the source code?
Floor 68 Posted 2005-12-04 23:29 ·  中国 北京 东城区 联通
高级用户
★★
Credits 506
Posts 187
Joined 2005-12-04 22:41
20-year member
UID 46500
Gender Male
Status Offline
Give it a support
Floor 69 Posted 2005-12-05 00:35 ·  中国 福建 厦门 电信
初级用户
Credits 31
Posts 16
Joined 2005-12-04 23:26
20-year member
UID 46501
Status Offline
The boss is too strong, worthy of learning!·!·
Floor 70 Posted 2005-12-14 01:05 ·  中国 陕西 西安 电信
初级用户
Credits 34
Posts 17
Joined 2005-12-08 21:03
20-year member
UID 46751
Status Offline
Salute to the senior! Thank you!
Floor 71 Posted 2005-12-20 11:44 ·  中国 北京 联通
高级用户
★★
Credits 506
Posts 187
Joined 2005-12-04 22:41
20-year member
UID 46500
Gender Male
Status Offline
Why can't I use it? According to the instructions, I configured the bc environment. I copied include2 over. I created a project and added those two libraries. I created a main.c by myself. I wrote the simplest code according to the instructions. But there are many errors when compiling?
Floor 72 Posted 2005-12-20 12:36 ·  中国 广东 深圳 电信
高级用户
★★
Credits 668
Posts 295
Joined 2005-07-26 00:00
20-year member
UID 41110
Gender Male
From 广东深圳
Status Offline
```c
// There is a Sail.Prj file in the include2 directory, use it as the project file!

// Below is an example
#include <Symbol.h>
#include <MyFrame.h>


// Stack's Size
unsigned int _stklen = 50u * 1024u; // Stack size

// Keyboard's Callback Function For All Default Window
int TransrateKey(CObject* pCurObj) // Callback function for virtual keyboard of all default windows
{
return(0);
}

void far VccFunction(CObject* pCurObj)
{
// Create a Dialog On the Center of Desktop
CDialog* pDialog = new CDialog; // Allocate instance
pDialog->CreateWindow(0, 0, 447, 364, "Radio Button Demo"); // Create window
pDialog->Center(); // Center the window

// Register Callback Function for Window
pDialog->SetTimeFc(NULL); // Register timer callback function
pDialog->SetDrawFc(NULL); // Register drawing callback function
pDialog->SetHelpFc(NULL); // Register help callback function
pDialog->SetKeyboardFc(NULL); // Register virtual keyboard callback function

// Create Close's Button Control
CCloseButton* pCloseButton = new CCloseButton(pDialog); // Allocate and create close button

// Create a Button Control
CButton* pButton1 = new CButton(pDialog);
pButton1->CreateObject(225, 141, 192, 24, "OK(\x3\E\x3)");
pButton1->SetShortcutKey(VK_ALT_E);
pButton1->SetFc(ClickEnterButton);
pButton1->SetID(BUTTONBASE + 1 - 1);

// Create a Button Control
CButton* pButton2 = new CButton(pDialog);
pButton2->CreateObject(223, 183, 192, 24, "Cancel(\x3\C\x3)");
pButton2->SetShortcutKey(VK_ALT_C);
pButton2->SetFc(ClickCancelButton);
pButton2->SetID(BUTTONBASE + 2 - 1);

// Create Group Control
CStatic* pGroup1 = new CStatic(pDialog);
pGroup1->CreateObject(10, 32, 204, 94, "Week");
pGroup1->SetID(GROUPBASE + 1 - 1);

// Create Radio Control
CRadio* pRadio1 = new CRadio(pDialog);
pRadio1->CreateObject(22, 53, 73, 24, "Monday");
pRadio1->SetStatic(TRUE);
pRadio1->SetRadio(TRUE);
pRadio1->SetID(RADIOBASE + 1 - 1);

// Create Radio Control
CRadio* pRadio2 = new CRadio(pDialog);
pRadio2->CreateObject(22, 76, 73, 24, "Tuesday");
pRadio2->SetID(RADIOBASE + 2 - 1);

// Create Radio Control
CRadio* pRadio3 = new CRadio(pDialog);
pRadio3->CreateObject(22, 98, 73, 24, "Wednesday");
pRadio3->SetID(RADIOBASE + 3 - 1);

// Create Group Control
CStatic* pGroup2 = new CStatic(pDialog);
pGroup2->CreateObject(226, 32, 204, 94, "Gender");
pGroup2->SetID(GROUPBASE + 2 - 1);

// Create Radio Control
CRadio* pRadio4 = new CRadio(pDialog);
pRadio4->CreateObject(240, 53, 57, 24, "Male");
pRadio4->SetStatic(TRUE);
pRadio4->SetRadio(TRUE);
pRadio4->SetID(RADIOBASE + 4 - 1);

// Create Radio Control
CRadio* pRadio5 = new CRadio(pDialog);
pRadio5->CreateObject(240, 83, 57, 24, "Female");
pRadio5->SetID(RADIOBASE + 5 - 1);

// Create Check Control
CRadio* pCheck1 = new CRadio(pDialog);
pCheck1->CreateObject(22, 154, 57, 24, "Reading");
pCheck1->SetBox(TRUE);
pCheck1->SetID(CHECKBASE + 1 - 1);
pCheck1->SetID(CHECKBASE + 1 - 1);

// Create Check Control
CRadio* pCheck2 = new CRadio(pDialog);
pCheck2->CreateObject(22, 180, 57, 24, "Running");
pCheck2->SetBox(TRUE);
pCheck2->SetID(CHECKBASE + 2 - 1);
pCheck2->SetID(CHECKBASE + 2 - 1);

// Create Check Control
CRadio* pCheck3 = new CRadio(pDialog);
pCheck3->CreateObject(22, 202, 73, 24, "Playing Football");
pCheck3->SetBox(TRUE);
pCheck3->SetID(CHECKBASE + 3 - 1);
pCheck3->SetID(CHECKBASE + 3 - 1);

// Create Group Control
CStatic* pGroup3 = new CStatic(pDialog);
pGroup3->CreateObject(10, 133, 204, 96, "Week");
pGroup3->SetID(GROUPBASE + 3 - 1);

// Create Edit Control
CEdit* pEdit1 = new CEdit(pDialog);
pEdit1->CreateObject(97, 153, 106, 21, NULL);
pEdit1->SetID(EDITBASE + 1 - 1);

// Create Edit Control
CEdit* pEdit2 = new CEdit(pDialog);
pEdit2->CreateObject(99, 180, 106, 21, NULL);
pEdit2->SetID(EDITBASE + 2 - 1);


// Show Window
pDialog->ShowWindow(); // Show window

// go into Message Loop
pDialog->DoModal(); // Enter window message loop

// Destroy Window
delete pDialog; // Delete dialog box


return;

}

int main(int argc, char** argv)
{

// Initlize Sysem Kernel
if (!::InitSystem(argc, argv)) // Initialize system kernel
{
::CloseSystem(); // Close system kernel
printf("\nInit System Error!");
return(0);
}


// Callback Function
::VccFunction(NULL);


// Close Sysem Kernel
::CloseSystem(); // Close system kernel

return(1);

}
```
Floor 73 Posted 2005-12-20 14:49 ·  中国 北京 联通
高级用户
★★
Credits 506
Posts 187
Joined 2005-12-04 22:41
20-year member
UID 46500
Gender Male
Status Offline
Error reported! I'm using msdos7.

//The following is an example
include <Symbol.h>
#include <MyFrame.h>


//Stack's Size
unsigned int _stklen = 50u * 1024u;//Stack size

//Keyboard's Callback Function For All Default Window
int TransrateKey(CObject* pCurObj)//Callback function for the virtual keyboard of all default windows
{
return(0);
}
int main(int argc, char** argv)
{

//Initlize Sysem Kernel
if (!::InitSystem(argc, argv))//Initialize the system kernel
{
::CloseSystem();//Close the system kernel
printf("\nInit System Error!");
return(0);
}


//
printf("\nhahahahahahahahhahah\n");


//Close Sysem Kernel
::CloseSystem();//Close the system kernel

return(1);

}
Floor 74 Posted 2005-12-20 14:58 ·  中国 北京 联通
高级用户
★★
Credits 506
Posts 187
Joined 2005-12-04 22:41
20-year member
UID 46500
Gender Male
Status Offline
The error message is:
Above are some addresses
Below let me [T] terminate, may need to restart the computer, if the system is not usable.....
Floor 75 Posted 2005-12-20 18:30 ·  中国 广东 深圳 电信
高级用户
★★
Credits 668
Posts 295
Joined 2005-07-26 00:00
20-year member
UID 41110
Gender Male
From 广东深圳
Status Offline
For BC31, if there are too many syntax errors, BC31 will crash!

#include <Symbol.h> // There is a syntax error here, crashing here
#include <MyFrame.h>
//-----------------------------------------

#include <Symbol.h> // It should be like this
#include <MyFrame.h>


//==========================================
//The following is an example
#include <Symbol.h>
#include <MyFrame.h>


//Stack's Size
unsigned int _stklen = 50u * 1024u; // Stack size

//Keyboard's Callback Function For All Default Window
int TransrateKey(CObject* pCurObj) // Callback function for virtual keyboard of all default windows
{
return(0);
}

void far VccFunction(CObject* pCurObj)
{
//Create a Dialog On the Center of Desktop
CDialog* pDialog = new CDialog; // Allocate instance
pDialog->CreateWindow(0, 0, 447, 364, "Radio Button Demo"); // Create window
pDialog->Center(); // Center window

//Register Callback Function for Window
pDialog->SetTimeFc(NULL); // Register timer callback function
pDialog->SetDrawFc(NULL); // Register drawing callback function
pDialog->SetHelpFc(NULL); // Register help callback function
pDialog->SetKeyboardFc(NULL); // Register virtual keyboard callback function

//Create Close's Button Control
CCloseButton* pCloseButton = new CCloseButton(pDialog); // Allocate and create close button

//Create a Button Control
CButton* pButton1 = new CButton(pDialog);
pButton1->CreateObject(225, 141, 192, 24, "OK(\x3\E\x3)");
pButton1->SetShortcutKey(VK_ALT_E);
pButton1->SetFc(ClickEnterButton);
pButton1->SetID(BUTTONBASE + 1 - 1);

//Create a Button Control
CButton* pButton2 = new CButton(pDialog);
pButton2->CreateObject(223, 183, 192, 24, "Cancel(\x3\C\x3)");
pButton2->SetShortcutKey(VK_ALT_C);
pButton2->SetFc(ClickCancelButton);
pButton2->SetID(BUTTONBASE + 2 - 1);

//Create Group Control
CStatic* pGroup1 = new CStatic(pDialog);
pGroup1->CreateObject(10, 32, 204, 94, "Week");
pGroup1->SetID(GROUPBASE + 1 - 1);

//Create Radio Control
CRadio* pRadio1 = new CRadio(pDialog);
pRadio1->CreateObject(22, 53, 73, 24, "Monday");
pRadio1->SetStatic(TRUE);
pRadio1->SetRadio(TRUE);
pRadio1->SetID(RADIOBASE + 1 - 1);

//Create Radio Control
CRadio* pRadio2 = new CRadio(pDialog);
pRadio2->CreateObject(22, 76, 73, 24, "Tuesday");
pRadio2->SetID(RADIOBASE + 2 - 1);

//Create Radio Control
CRadio* pRadio3 = new CRadio(pDialog);
pRadio3->CreateObject(22, 98, 73, 24, "Wednesday");
pRadio3->SetID(RADIOBASE + 3 - 1);

//Create Group Control
CStatic* pGroup2 = new CStatic(pDialog);
pGroup2->CreateObject(226, 32, 204, 94, "Gender");
pGroup2->SetID(GROUPBASE + 2 - 1);

//Create Radio Control
CRadio* pRadio4 = new CRadio(pDialog);
pRadio4->CreateObject(240, 53, 57, 24, "Male");
pRadio4->SetStatic(TRUE);
pRadio4->SetRadio(TRUE);
pRadio4->SetID(RADIOBASE + 4 - 1);

//Create Radio Control
CRadio* pRadio5 = new CRadio(pDialog);
pRadio5->CreateObject(240, 83, 57, 24, "Female");
pRadio5->SetID(RADIOBASE + 5 - 1);

//Create Check Control
CRadio* pCheck1 = new CRadio(pDialog);
pCheck1->CreateObject(22, 154, 57, 24, "Reading");
pCheck1->SetBox(TRUE);
pCheck1->SetID(CHECKBASE + 1 - 1);
pCheck1->SetID(CHECKBASE + 1 - 1);

//Create Check Control
CRadio* pCheck2 = new CRadio(pDialog);
pCheck2->CreateObject(22, 180, 57, 24, "Running");
pCheck2->SetBox(TRUE);
pCheck2->SetID(CHECKBASE + 2 - 1);
pCheck2->SetID(CHECKBASE + 2 - 1);

//Create Check Control
CRadio* pCheck3 = new CRadio(pDialog);
pCheck3->CreateObject(22, 202, 73, 24, "Playing Football");
pCheck3->SetBox(TRUE);
pCheck3->SetID(CHECKBASE + 3 - 1);
pCheck3->SetID(CHECKBASE + 3 - 1);

//Create Group Control
CStatic* pGroup3 = new CStatic(pDialog);
pGroup3->CreateObject(10, 133, 204, 96, "Week");
pGroup3->SetID(GROUPBASE + 3 - 1);

//Create Edit Control
CEdit* pEdit1 = new CEdit(pDialog);
pEdit1->CreateObject(97, 153, 106, 21, NULL);
pEdit1->SetID(EDITBASE + 1 - 1);

//Create Edit Control
CEdit* pEdit2 = new CEdit(pDialog);
pEdit2->CreateObject(99, 180, 106, 21, NULL);
pEdit2->SetID(EDITBASE + 2 - 1);


//Show Window
pDialog->ShowWindow(); // Show window

//go into Message Loop
pDialog->DoModal(); // Enter window message loop

//Destroy Window
delete pDialog; // Delete dialog box


return;

}

int main(int argc, char** argv)
{

//Initlize Sysem Kernel
if (!::InitSystem(argc, argv)) // Initialize system kernel
{
::CloseSystem(); // Close system kernel
printf("\nInit System Error!");
return(0);
}


//Callback Function
::VccFunction(NULL);


//Close Sysem Kernel
::CloseSystem(); // Close system kernel

return(1);

}
‹ Prev 1 3 4 5 6 7 20 Next ›
Forum Jump: