Board logo

标题: [推荐]面向TC的开源图形软件开发包~请大家支持下!! [打印本页]

作者: 凌晨一点     时间: 2004-12-9 00:00    标题: [推荐]面向TC的开源图形软件开发包~请大家支持下!!

  NEO SDK是一个面向 Turbo C 的免费开源图形软件开发包。它支持基本绘图、多种格式图形显示、鼠标操作、扩展内存和扩充内存的操作、时钟、音频播放、多种字体的汉字及英文显示等等特性;更激动人心的是,它可以工作于 Turbo C 库函数无法达到的高分辨率下(比如800X600、1024X768甚至1280X1024);而且,它支持8位、15位和16位三种色深!而且拥有不错的处理速度。NEO中的函数调用大部分与Allegro相似,为你今后向Allegro过渡作准备。NEO还开放所有源代码,因为我认为这样更利于让大家发现BUG,利于NEO的成长。希望你能喜欢。

  本开发包为1.1.23(修正)版。它*主要*拥有以下特性:
     1、支持320X200,640X400,640X480,800X600,1024X768,1280X1024等各种分辨率;
     2、全面支持8位即256色,15位32768色,16位即65536色三种色深模式;
     3、齐全的基本的绘图函数,让你轻松绘制象点、线、方、圆等等各种简单的图形;
     4、支持多种格式图形的显示,在这一版里,支持 .BMP 及 .ICO 和 .CUR 图形文件的显示。在以后的版本中,还会陆续增加对 .PCX, .GIF, .TGA 等格式的支持;   
     5、支持鼠标操作,并集成一套功能强大高级鼠标控制函数,譬如能检测双击,还支持使用 .ico, .cur文件作为光标等;
     6、拥有一套高级键盘处理函数,用户可以通过篡改键盘中断来使用它们;
     7、集成时钟控制函数,主要用于游戏开发,你也可以将鼠标与时钟绑定,便于鼠标的操作;(和Allegro相似);
     8、支持扩展内存和扩充内存的操作,便于开发需要大内存的程序;
     9、可以显示多种字体的英文和中文,并支持一些文字特效;
    10、拥有两套图形显示函数,一套用于常规内存下,特点是兼容性好;另一套用于扩展内存,特点是速度更快但兼容性较差,因为要使用扩展内存必须加载 HIMEM.SYS ,未加载则无法使用第二套函数;
    11、支持矩形输出裁剪,让动画等各种显示特效均成为可能;
    12、支持类似 graphics.h 中库函数的作图模式,象XOR异或模式;
    13、兼容 graphics.h 中的大部分函数以方便将原来使用 graphics.h 的程序移植到NEO中来;
    14、强大的错误处理系统,能根据用户的设置决定输出错误信息的方式,譬如直接在屏幕上显示还是输出到错误日志,或者仅仅只用喇叭报一下警;
    15、完备的编译开关组,让你有选择的采用所需的部分功能,减少可执行文件的大小,加快编译速度;
    16、强大快速的调色板操作函数,你可以使用8位色彩分量长的调色板,甚至可以直接可以将某个256色文件的调色板设置为当前的系统调色板;
    17、支持波形文件通过声卡的播放,让你的程序更加绘声绘色!!!
    在NEO的后续版本中,还会增加对双缓冲技术的支持,对图形用户接口(GUI) 的支持,对Alpha效果的支持等等,让你感受一个强大的NEO SDK!

                            <更多的详细内容请阅读docs文件夹中的教程>
zft1.ys168.com
http://neosdk.91i.net

[此贴子已经被作者于2005-1-14 0:48:49编辑过]


作者: dos_fan     时间: 2004-12-11 00:00
看起来功能接口做得挺多的,支持!!
作者: 凌晨一点     时间: 2004-12-11 00:00
已经更新为V1.0.37 Beta:
http://ckerhome.91i.net/neo_sdk.exe
作者: 凌晨一点     时间: 2004-12-12 00:00
http://neosdk.91i.net/product/neo_wave.exe
http://ckerhome.91i.net/neo_wave.exe

上面是NEO的音频播放部分公测程序1.0,下载解压后执行WAVPLAY.EXE依照提示按下任意键就可能听到WIN ME的启动音乐!发上来的目的是想让大家帮忙测试看看兼容性如何,以方便我的下一步开发。使用后麻烦你抽空将结果填写到下面的反馈表,谢谢:

是否能听到音乐:____
你使用的操作系统:____
声卡的型号:____  (不清楚就写是不是集成声卡)
主板的型号:____  (若是集成声卡就最好能写一下)

填写完后你可以直接来论坛回复;也可以到NEO资源站的留言簿http://gb.dxxo.com/index.asp?user=neosdk中回复;当然,也可以用E-MAIL发给我:ckerhome@yahoo.com.cn
再次谢谢你的参与!由于只是一个公试程序,WAVPLAY.EXE只能播放小于64KB的8位WAV文件^_^
怎么样? Turbo C播放音乐的感觉还不错吧?预计在NEO V1.1.00正式版中,音频播放例程会被加进去!到时候,你就可以在你在TC程序中加入音效了~今天是2004年12月12日,公测时间到12月30日截止,因为1月份就要准备发布NEO V1.1.00正式版了,呵呵~

更多详细情况请关注NEO资源站:http://neosdk.91i.net
作者: jiaking     时间: 2004-12-13 00:00
好东西啊。但我在虚拟机里运行例子好像没反应。??
作者: jiaking     时间: 2004-12-13 00:00
好东西啊。但我在虚拟机里运行例子好像没反应。??ex11可以,哈哈,美妙!!
作者: 凌晨一点     时间: 2004-12-13 00:00
虚拟机?请问你使用的是什么操作系统呢?
作者: jiaking     时间: 2004-12-17 00:00
win2k+virtual PC这个开发包很不错!!我准备用到我的程序上。但能不能把bmp文件嵌到执行文件里呢?这样就“集成度”高些,免得让人家替换掉。还有,能显示JPG图了吗?BMP太大了。支持您!!期望下一版本。有要测试的请发给我:zhuhuijia@126.com。谢谢
作者: 凌晨一点     时间: 2004-12-17 00:00


  Quote:
以下是引用jiaking在2004-12-17 1:39:28的发言:

win2k+virtual PC
这个开发包很不错!!我准备用到我的程序上。但能不能把bmp文件嵌到执行文件里呢?这样就“集成度”高些,免得让人家替换掉。还有,能显示JPG图了吗?BMP太大了。
支持您!!期望下一版本。有要测试的请发给我:zhuhuijia@126.com。谢谢

有道理啊,把位图整合到执行文件——主意不错~
JPG文件解码过程较复杂,以致会影响速度。你看PCX和GIF格式的怎么样?
作者: jiaking     时间: 2004-12-18 00:00
GIF能动,肯定好。但只能支持到256色,美中不足。最好能支持各种图片格式,混合着用,这样既又能真彩又会动,您说呢?你能行的。另外一种矢量图DXF格式我觉得也很有必要支持,个头小、易实现,在工业、CAD设计方面很多应用。期待你的下一精彩!!
作者: 凌晨一点     时间: 2004-12-20 00:00
呵呵
谢谢你的建议,我会好好考虑的^_^
作者: jiaking     时间: 2004-12-26 00:00
楼主开发得怎样了?支持gif了吗?
作者: 凌晨一点     时间: 2004-12-26 00:00
GIF格式已经有眉目了,现在主要是实现了音频播放功能:NEO V1.1.00 正式版发布!!新特性如下:
  增加音频播放例程,可以用来播放.wav波形文件!
  增加了加载时钟例程后的精确定时函数neo_clock()
  修改了一些小错误
  NEO教程升级为1.25版
  增加了几个实例
下载地址:http://neosdk.91i.net/product/neo_sdk.exe
最新动态请关注NEO资源站:http://neosdk.91i.net
作者: 凌晨一点     时间: 2004-12-30 00:00
NEO DOS图形编程群已经开通:7713568
欢迎各位对图形、游戏编程技术有兴趣的同道加入一起交流讨论!
还有大量的共享资源哦!

[此贴子已经被作者于2004-12-31 1:30:30编辑过]



作者: 拉菲尔     时间: 2005-1-1 00:00
支持一下,楼主加油!
作者: 凌晨一点     时间: 2005-1-5 00:00
NEO SDK将在新年推出V1.1.00修正版,目前使用NEO的用户可以将改进意见发给我:
ckerhome@yahoo.com.cn
谢谢你的关注和支持!

作者: 凌晨一点     时间: 2005-1-14 00:00
修正版已经发布:
  修复了音频例程在Windows XP下执行完后出错的BUG
  增加了在WIN XP下加快音频刷新率的功能
  大幅调整图形处理的架构以增加对15位色图形模式的支持
  优化了调色板等例程来减少冗余代码和增加运行效率
  增加了对256色模式下8位色彩分量调色板的支持
  增加了工作于加载时钟例程后的高精度延时函数rest()
  修正了24点阵汉字显示函数的BUG并进行了优化
  修正了在紧凑模式和大编译模式下show_bmp()中的矩形剪裁BUG
  修正了高彩模式下load_icon()读取图标文件发生偏色的BUG
  修正了错误处理例程的一些架构
  NEO教程升级为1.85版
zft1.ys168.com
由于NEO首页目前下载有问题,所以借了朋友一个网络硬盘,不便之处多多包涵~
作者: GOTOmsdos     时间: 2005-1-14 00:00
太好了! 就是为我准备的! 刚疯狂的学完C,在学C++之前,一定要学一下C的图形游戏编程,正在狂攻中..正需要些工具.非常感谢! 下来学学用用...
作者: 凌晨一点     时间: 2005-1-14 00:00
目前NEO资源站已经恢复下载
需要NEO SDK的朋友请赶快下
http://neosdk.91i.net/down.htm

这破空间时好时坏,诸多不便,还请包涵~
并希望大家能继续支持!
作者: yyz985     时间: 2005-1-14 00:00
好多牛人
作者: GOTOmsdos     时间: 2005-1-17 00:00
哇! 试用了音频播放,效果非常好!几乎跟XP的一样好! 完全没想到!
非常感谢!  刚才试了下11KHZ,8位,单声道的WAV,居然听不出差在哪里!
狂顶呀!

[此贴子已经被作者于2005-1-17 20:40:33编辑过]



作者: GOTOmsdos     时间: 2005-1-17 00:00
单独的播放WAV文件很好,但把NEO.H加到其他C文件中时,编译器(TC,WINTC)报错! 说很多模式被重新定义了,还有很多变量未被定义! 可能这个NEO.H与编译其中的原有头文件冲突啊!现在没法用啊!
作者: 凌晨一点     时间: 2005-1-18 00:00
由于NEO中定义了许多函数和宏,所以如果你的程序里有相同的定义肯定会起冲突。目前你可以试试使用“编译开关”尽可能将不用的功能关掉,如此一来,许多的定义也随之屏蔽了(有关编译开关的具体情况,NEO的文档中用说明)。我也正在着手将NEO的定义“生僻化”,比如真值的定义“TRUE”,可能有许多用户程序会有一样的定义,NEO以后的版本会改为“_TRUE”之内的比较少用的形式,以尽量避免此类冲突。
作者: GOTOmsdos     时间: 2005-1-18 00:00
你在啊,谢谢了,,编译器出错都是说图形的,我现在仅仅NEO的用播放WAV的功能,但不知道怎么改?能不能简单的说一下,只用什么头文件就可以了?
作者: GOTOmsdos     时间: 2005-1-18 00:00    标题: NEO 通不过

除了SOUND TIMER 以外,我已经把全部宏定义为禁用,但还是有主要两地方报错,通不过
enum xxxxxx
{
XOR_PUT
COPY_PUT
NOT_PUT
.
.
.

}
跟我的冲突,重定义了,我把它删掉后,却出现了更多的不符....
我现在只想用SOUND......
怎么办?


[此贴子已经被作者于2005-1-18 1:24:43编辑过]



作者: 凌晨一点     时间: 2005-1-27 00:00
我用E-MAIL回复了,请查收
作者: GOTOmsdos     时间: 2005-1-28 00:00
我没有收到你的信啊!mykool@126.comtdaim@sina.com
作者: jawbin     时间: 2005-1-29 00:00
先看看怎么用......
作者: jawbin     时间: 2005-1-29 00:00
我还没下完呢,真的开源么,我激动得要不知道怎么办才好了!不过下载的时候看到是exe的,能不能以后不用这样的格式?怕怕
作者: jawbin     时间: 2005-1-29 00:00
说明文档里的简介和开发原因是乱码,如果能加上字符集就不会这样了,虽然这与我的浏览器有关。另外能不能加入高级点的对象(或者仿对象),例如, Edit, Button, Label, From...有没有可能实现一个 “Windows Virtual Machine for DOS”? 当然,其实我指的是个转换层,编译是起作用,而不是附加一个解释器在 DOS 中。我一直想能把 Windows SDK 源代码( 带 GUI )“直接”编译成能在 DOS 下运行并且行为和外观差不多的程序。

[此贴子已经被作者于2005-1-29 23:34:59编辑过]



作者: jawbin     时间: 2005-1-29 00:00
看到了,楼主有意实现GUI.....期待:)另外,音频可否加一演奏乐谱的函数,然后内定一种缺省乐谱格式(觉得应该是最直接的,别的乐谱可以转换成它),而同样提供一些乐谱转换函数。我偶尔看了一下手级铃声乐谱格式,发现不同品牌甚至不同系列都有不同的格式。而我现在觉得容易找的是手机铃声乐谱,比较偏好西门子和诺基亚的格式(这只能选择,因为人家都定了)。见笑:)
作者: jawbin     时间: 2005-1-29 00:00
[em23]我有幸看到这个帖子,然后注册了这个论坛,向楼主学习*^o^*
作者: jawbin     时间: 2005-1-29 00:00
晕了,我已经编辑过了,怎么还是错误的句子,请允许我更正一下,前面的“编译是起作用”应该是“编译时起作用”
作者: 凌晨一点     时间: 2005-1-31 00:00
恩啊,谢谢你的支持!有关建议我会记好的,GUI方面也会加点紧,做成一个完善的NEO SDK。
作者: 凌晨一点     时间: 2005-2-3 00:00
现在访问NEO资源站还可以通过http://www.cstudy.cn/neosdk这个地址。
感谢网友小汀提供!也希望大家能去支持他的鹏程C语言教学网站http://www.cstudy.cn
作者: jawbin     时间: 2005-3-4 00:00
支持来的
作者: 凌晨一点     时间: 2005-3-10 00:00
NEO V1.1.36 发布:
  修正了16X16点阵汉字显示的一个BUG
  增加了一个实例
  修正了屏幕剪切输出的一个BUG
  增加了自带矩形剪裁的位图显示函数bmp_blit(),主要用于2D游戏场景的绘制
  教程升级为1.90版下载请访问上边的地址~~~

作者: 凌晨一点     时间: 2005-4-2 00:00
    在V1.1.36发布后,经过近一个月的紧张准备,NEO最新版本已经到了最后内测阶段!和以前所有版本一样,新的版本再次提供了让人耳目一新的功能:
  增加类似DirectX的多图形缓冲页架构,并支持硬件换页机制!
  继续修正屏幕剪切输出的BUG
  修正错误抛出功能中的BUG
  增加几个图形模式相关的功能函数
  重写了汉字输出的核心
  修正延时函数rest()的精度
  整理清除冗余代码
  ……    其中多图形缓冲机制是最引人入胜的:你可以创建一个后台缓冲和多个离屏页,后台缓冲与前台页共同组成双缓冲系统,而双缓冲系统是消除屏幕闪烁的方案之一。和DirectX一样,新的NEO允许你将位图资源提前全部读入离屏页中,等到要使用的时候再通过硬件换页机制显示到前台页。由于所有这些操作都是在显卡的硬件加速下独立完成,页面空间也是从显存直接获得,所以性能达到前所未有的高度并且突破了Turbo C的寻址瓶劲!目前最新的DEMO即使是在1280X1024X64K的图形模式下都不会感觉到丝毫的闪烁和不畅!接下来的硬件拉屏、虚拟内存、GUI等新功能也将陆续加入。如果说NEO是一个实验的话,那么这个实验的目的就是挑战TC的极限!!NEO主页:http://neosdk.91i.net
NEO简介:http://neosdk.91i.net/int.html
NEO下载:http://ckerhome.91i.net/NEO_V1.1.36.EXE
NEO论坛:http://www.cstudy.cn/forum_list.aspx?id=2
作者: qingwashaoye     时间: 2005-4-4 00:00
期待中。。。[em07]
作者: jawbin     时间: 2005-4-8 00:00
[em02] great, but why this site is so slowly
作者: 凌晨一点     时间: 2005-4-9 00:00
Because the free space is so lousy~
作者: 凌晨一点     时间: 2005-4-15 00:00
经过两周的奋斗,NEO的新版本终于落成了。这次升级的变动比过去任何一次都要大,所以我决定先放个测试版出来,让大家帮忙找找BUG。
这次升级作了以下更新:
  增加多图形缓冲页架构,并支持硬件换页机制!
  增加硬件滚屏机制以用于制作卷轴类游戏
  增加了图形模式下的功能函数,如:get_image()
  增加抓屏函数用来捕捉屏幕并保存为文件
  给出了解决Windows XP下音频播放不流畅问题的方案
  开始改进位图显示函数内核,这项改进将持续到下个版本
  继续修正屏幕剪切输出的BUG
  解决了高彩模式下显示奇数宽度256色图片时的花屏问题
  修正延时函数rest()的精度
  解决了与stdlib.h冲突的问题
  修复错误抛出功能中的一个小问题
  重写了汉字输出的核心
原本想加入几个新实例的,但由于一些因素而没能做完,我争取在正式版中加上。
由于原来的免费空间不够大而且无法上传了,现在NEO使用的是由编码社区提供的专用空间——
首页:http://coderlife.net/neo
下载:http://coderlife.net/neo/down/neo.rar
谢谢编码社区的支持,也希望大家能去关注一下编码社区:
http://www.coderlife.net
作者: jawbin     时间: 2005-4-25 00:00
如果有创建程序向导就好了
作者: 凌晨一点     时间: 2005-5-11 00:00
NEO SDK V2.0.14 Beta II 发布!!

  增加了滚屏功能中的坐标系变换函数
  增加真彩象素格式转换函数集
  改良了更换鼠标光标函数
  修正了fade_out()函数中的一个潜在错误
  修正一部分编译开关可能造成编译时报警的问题
  更新了示例ex09.c并增加了几个示例程序
  教程升级为2.10版
另外,NEO资源站也更新了——
首页:http://neo.coderlife.net
作者: 凌晨一点     时间: 2005-5-11 00:00
你所说的代码创建工具已经在写了!





作者: 凌晨一点     时间: 2005-7-5 00:00
2005-7-03: version 2.1.41 Release
  位图显示函数内核改进阶段性成果:直接控制显存的插件开始投入使用
  采用VGA调用以增强13H模式的兼容性(完全兼容VGA/SVGA显卡)
  增加了几个实用的回调(call back)函数
  加入了256色模式下调色板过渡例程
  完善了淡出淡入(Fade out/in)函数!
  增加了一批诸如neo_printf()之类的功能函数
  提高了与TC++,BC++等编译器的兼容性
  修正了_dot(),clear(),clear_to_color()与换页机制不协调的BUG
  初步解决了键盘例程中重复认键的BUG
  解决了xms_alloc()中的一个可能导致实际内存申请量少于指定值的BUG
  修正了调用鼠标安装函数后破坏原显示画面的BUG
  教程升级为2.25版下载:http://coderlife.net/neo/down/neo.rar
作者: qingfen     时间: 2006-5-8 23:46
这个程序要在纯dos下才能运行的吗?
作者: asbai     时间: 2006-5-17 11:54
好东西,支持一下。

同时想问Allegro/DJGPP环境或者MGL/DJGPP环境不是更好吗?DJGPP支持STL和几乎所有的C++特性,支持32位寻址以及对最新CPU的指令优化(DJGPP环境里的GCC已经到4.x版本了现在)。

MGL/wxWidgets/DJGPP组合可以直接开发支持Win95/GTK+等多种主题的纯DOS GUI,按钮、菜单、下拉框、属性页,甚至Rich Edit,HTML View等高级控件都能直接使用,并且相同一份源码只要重新编译就能跑在Win16/Win32/WinCE/Linux/Unix/BeOS/VMS/Mac OS等多种平台上。在不损失执行效率的前提下提供了一流的可移植性。

所以觉得重新发明轮子意义不大。以上仅为个人想法,有欠妥之处还请凌晨兄指正,呵呵。

[ Last edited by asbai on 2006-5-17 at 11:58 ]
作者: zyl910     时间: 2006-5-18 13:28
这不是意义的问题
在开发这样的系统的时候是对自身编程水平的极大提高,更能深入理解那些高级开发环境的本质

如果只搞应用的话,中国永远跟在老外的屁股后面

现在国内就是缺乏自主研发精神,楼主我支持你!
我自己也一直想写一套类Windows界面库来锻炼编程水平
作者: asbai     时间: 2006-5-22 20:35


  Quote:
Originally posted by zyl910 at 2006-5-18 13:28:
这不是意义的问题
在开发这样的系统的时候是对自身编程水平的极大提高,更能深入理解那些高级开发环境的本质

如果只搞应用的话,中国永远跟 ...

.... 被误会了,呵呵,我的意思是希望善意提醒楼主了解相似产品,走出自己的特点~
作者: zhgwbzhd     时间: 2006-6-15 11:32
现在没有能下载的了。哪位老兄给上传一份。
作者: ynlc     时间: 2009-2-21 11:26
这个不错呀,可惜我不能下载了。
作者: enjoyer     时间: 2009-2-22 16:26
现在网站已经无法访问了,但是奇怪还能下到1k的文件。不知道楼主还有没有开发这个产品?这个库所提供图形算法还是很有用的哦
作者: jiaking     时间: 2009-4-17 07:02
是不是已经停止开发了?好像开发人已经转行了
作者: guapibai     时间: 2009-12-4 17:43
good
作者: maliku     时间: 2010-1-19 13:50
楼上的朋友可以到
http://cdmalcl.806.chinaidc.bj.c ... s=downloadForPJBlog
页面找到下载,很久之前的作品了,没想到还有朋友需要,谢谢支持!
作者: shxch1987     时间: 2010-7-13 12:04
把帖子看完,试了N个网址之后,发现仙逝了~