Frequently Asked Questions
 


FreeBASIC on Xbox一般问题
FreeBASIC入门Xbox问题

FreeBASIC on Xbox一般问题



FreeBASIC可以真的做Xbox游戏吗?

在理论上,是的。FreeBASIC 0.13的副本于2005年7月移交给Xbox,并生成工作可执行文件。但是,对于0.14版本的编译器的更改破坏了兼容性。

Xbox端口目前处于僵尸模式;项目团队中没有人目前拥有控制台 - 原始端口由SJ Zero完成,但是它已经在v0.14中完成了运行时库修改。

端口处于保持状态,直到GCC后端口完成,因为相信此端口将修复Xbox端口。


FreeBASIC Xbox端口如何做?

FreeBASIC for Xbox是可能的,因为开源开发人员的努力,他们创建了Xbox的合法软件开发工具OpenXDK。OpenXDK是为一个unixish环境创建的,这与FreeBASIC源非常兼容。

该端口是通过强制FreeBASIC运行时库使用Glibc的OpenXDK版本而不是mingw32版本创建的。当使用正确的标志编译时,这将创建一个标准的EXE文件。然后,CXBE将剥离此可执行文件上的Windows PE头,并将其替换为Xbox头。

实际上,所有端口真正做的是更改运行时库和链接,以允许CXBE实用程序创建一个Xbox可执行文件。


Xbox 360的端口怎么样?

Xbox是一款运行NVIDIA nForce芯片组衍生产品的英特尔奔腾3,配有NVIDIA视频芯片和NVIDIA SoundStorm声卡。这就是为什么Xbox端口可能而且比较直接。

另一方面,Xbox 360使用外来CPU,和类似的外来硬体。FreeBASIC目前无法为Xbox 360生产可执行文件。

另外一个问题是Xbox 360对OpenXDK的缺乏。这将迫使任何端口使用由Microsoft创建的受版权保护的软件Xbox 360 XDK。这将是非法的,不道德的,并将FreeBASIC置于合法的jeparody。

因此,Xbox 360的端口在这个时候被认为是不可能的。

PlayStation或其他控制台的端口怎么样?

Xbox是一款运行NVIDIA nForce芯片组衍生产品的英特尔奔腾3,配有NVIDIA视频芯片和NVIDIA SoundStorm声卡。这就是为什么Xbox端口可能而且比较直接。

另一方面,PlayStation使用一个RISC芯片,FreeBASIC目前无法生成代码。几乎所有的控制台都使用非x86处理器,停止使用FreeBASIC的开发。

另一个问题是对于许多控制台,OpenXDK的缺点是相同的。这将迫使任何港口使用商业软件开发工具包,由控制台制造商创建的受版权保护的软件。这将是非法的,不道德的,并将FreeBASIC置于合法的jeparody。

因此,目前其他控制台的端口被认为是不可能的。然而,当GCC后端口完成时,许多端口到控制台和具有合法可用开发套件的其他平台将是可能的。
为什么在开发者获得一个改装的Xbox之前,您是不是使用仿真器?

没有已知的Xbox模拟器能够运行FreeBASIC代码。需要合法的硬件控制台来运行所制作的程序。这使得仿真器完全无用于开发。
为什么不使用Microsoft XDK?

使用Microsoft XDK有两个主要原因。

1)微软的XDK是一部受版权保护的软件,利用它将是非法和不道德的,使FreeBASIC面临法律诉讼的风险。此外,FreeBASIC团队的任何成员都没有访问Microsoft XDK,以防止FreeBASIC合法地“污染”。

2)OpenXDK是围绕gcc和UNIX风格的系统开发的,如MinGW或Cygwin。这意味着它可以很少的努力集成到FreeBASIC中。另一方面,微软XDK是围绕微软编译器开发的,因此不会轻易地嵌入到FreeBASIC的源代码中。

NOTE: PROTECTION OF MICROSOFT'S COPYRIGHT, AND BY PROXY OF FREEBASIC, IS OF PRIMARY IMPORTANCE IN THIS PROJECT.WE DO NOT WANT HELP FROM ANYONE WITH THE XDK, NOR DO WE WANT HELP FROM ANYONE WITH A DEBUGGER XBOX.ANY ATTEMPT TO OFFER THE XDK OR XDK RELATED HELP SHALL BE FORWARDED TO THE PROPER LAW ENFORCEMENT AGENCIES.

为什么不用Microsoft调试器来修复它?

有两个非常好的理由不使用Microsoft调试器。

1)微软的XDK是一部受版权保护的软件,利用它将是非法和不道德的,使FreeBASIC面临法律诉讼的风险。此外,FreeBASIC团队的任何成员都没有访问Microsoft XDK,以防止FreeBASIC合法地“污染”。

2)Microsoft的调试器需要一个特别修改的Xbox,既没有SJ Zero也没有任何开发团队成员,坦白说,没有人在端口上工作,相信调试器可以与FreeBASIC可执行文件一起使用 - 就像微软的调试器不能读取FreeBASIC调试器文件,我们怀疑Xbox调试器可以读取FreeBASIC调试器文件。无论如何,#1胜过任何尝试。

NOTE: PROTECTION OF MICROSOFT'S COPYRIGHT, AND BY PROXY OF FREEBASIC, IS OF PRIMARY IMPORTANCE IN THIS PROJECT.WE DO NOT WANT HELP FROM ANYONE WITH THE XDK, NOR DO WE WANT HELP FROM ANYONE WITH A DEBUGGER XBOX.ANY ATTEMPT TO OFFER THE XDK OR XDK RELATED HELP SHALL BE FORWARDED TO THE PROPER LAW ENFORCEMENT AGENCIES.



这不是非法吗?微软不能起诉你吗?

版权对保护像Microsoft这样的商业公司以及FreeBASIC等小型项目很重要。没有版权,也不能对代码执行任何权利(在我们的例子中,如GPL)。一般来说,这是版权问题,最常见的是开源项目试图做这样的事情的原因。

因为FreeBASIC Xbox端口是使用已经建立合法性的软件工具来创建的,所以它们通常源自其合法性已经建立的其他来源,FreeBASIC for Xbox并不是非法的。已经谨慎小心保护FreeBASIC免受使用任何Microsoft版权的代码,并且将遵循并将遵循努力以防止访问受版权保护的代码。

FreeBASIC入门Xbox问题



使用FreeBASIC编译Xbox游戏需要什么?

该端口当前不工作,但是当它准备就绪时,您将只需要一个FreeBASIC for Xbox的副本。


你会如何得到输入?

最初,输入将通过SDL获取,因为gfxlib端口尚未完成。其中一个开发人员正在使用通用的SDL版本的gfxlib,但是它将为Xbox端口提供完整的gfxlib功能。


它只在某些Xbox上运行吗?

FreeBASIC for Xbox可执行文件只能在修改后的Xbox上运行。然而,修改Xbox通常像在某个游戏中加载保存游戏一样简单。更多信息,请访问Xbox-Linux网站。


是否需要另一种语言(例如C或ASM)?

No.FreeBASIC for Xbox是唯一需要的。


你需要一个特殊的lib吗?

No.FreeBASIC for Xbox将附带所有支持的库。


你可以使用预制函数(墨迹,线等)吗?

目前,输入和输出命令(如墨迹和线)不可用,但所有其他功能(包括文件I / O)都是。其中一个开发人员正在开发一个通用的SDL版本的gfxlib,但是如果它的功能,它将为xbox端口提供完整的gfxlib功能。


我还应该知道什么?

FreeBASIC for Xbox创建的可执行文件不受版权保护的Microsoft代码,使其合法分发。

旨在使用SDL和rtlib的Windows和Linux源文件将能够为Xbox开箱即可编译。虽然Xbox通过游戏端口(专有USB连接)支持键盘,但输入方案将不得不更改为占用一个游戏句柄。