HOME

TheInfoList



OR:

Fenix Project is the
codename A code name, call sign or cryptonym is a code word or name used, sometimes clandestinely, to refer to another name, word, project, or person. Code names are often used for military purposes, or in espionage. They may also be used in industrial c ...
for a
GNU GNU () is an extensive collection of free software Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any ...
project to create a free
compiler In computing, a compiler is a computer program that translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primarily used for programs that ...
for a
scripting language A scripting language or script language is a programming language that is used to manipulate, customize, and automate the facilities of an existing system. Scripting languages are usually interpreted at runtime rather than compiled. A scripti ...
derived from the one created by Hammer Technologies for the
game development Video game development (or gamedev) is the process of developing a video game. The effort is undertaken by a developer, ranging from a single person to an international team dispersed across the globe. Development of traditional commercial PC ...
suite DIV Games Studio. However, several features have been added which make it incompatible with most games programmed with DIV Games Studio.


Features

Fenix is an interpreted language focused on
2D video game A variety of computer graphic techniques have been used to display video game content throughout the history of video games. The predominance of individual techniques have evolved over time, primarily due to hardware advances and restrictions ...
development. Its main feature, inherited from DIV, is the pseudo-parallel programming similar to
Coroutines Coroutines are computer program components that generalize subroutines for non-preemptive multitasking, by allowing execution to be suspended and resumed. Coroutines are well-suited for implementing familiar program components such as cooperative ...
, i.e. it gives the developer the chance of programming different processes (enemies, characters, etc.) separately, and the engine will synchronize them. This makes video game developing much easier. Most of its features are now based on
Simple DirectMedia Layer Simple DirectMedia Layer (SDL) is a cross-platform software development library designed to provide a hardware abstraction layer for computer multimedia hardware components. Software developers can use it to write high-performance computer game ...
(SDL) which makes Fenix a very portable project. Other features include full 2D support ( scaling, transparencies, blend ops...), 16 bpp color, sound (.
ogg Ogg is a free, open container format maintained by the Xiph.Org Foundation. The authors of the Ogg format state that it is unrestricted by software patents and is designed to provide for efficient streaming and manipulation of high-quality di ...
, . mod, . it, . s3m, . wav), joystick support,
mode7 Mode 7 is a graphics mode on the Super Nintendo Entertainment System video game console that allows a background layer to be rotated and scaled on a scanline-by-scanline basis to create many different effects. The most famous of these effects i ...
and extensions via
libraries A library is a collection of materials, books or media that are accessible for use and not just for display purposes. A library provides physical (hard copies) or digital access (soft copies) materials, and may be a physical location or a vir ...
.


Supported platforms

* Official:
Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for ...
,
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which i ...
,
Mac OS Two major famlies of Mac operating systems were developed by Apple Inc. In 1984, Apple debuted the operating system that is now known as the "Classic" Mac OS with its release of the original Macintosh System Software. The system, rebranded " ...
, BSD,
BeOS BeOS is an operating system for personal computers first developed by Be Inc. in 1990. It was first written to run on BeBox hardware. BeOS was positioned as a multimedia platform that could be used by a substantial population of desktop users a ...
* Unofficial: GP32, GP2X, GP2X Wiz,
Dreamcast The is a home video game console released by Sega on November 27, 1998, in Japan; September 9, 1999, in North America; and October 14, 1999, in Europe. It was the first sixth-generation video game console, preceding Sony's PlayStation 2, N ...
, PS2


Status

Its current version is 0.92a (
beta Beta (, ; uppercase , lowercase , or cursive ; grc, βῆτα, bē̂ta or ell, βήτα, víta) is the second letter of the Greek alphabet. In the system of Greek numerals, it has a value of 2. In Modern Greek, it represents the voiced labi ...
) and no project maintainer is currently taking care of updating it. The old 0.84 branch — which happened to be quite unstable — was retaken by SplinterGU, a developer from
Argentina Argentina (), officially the Argentine Republic ( es, link=no, República Argentina), is a country in the southern half of South America. Argentina covers an area of , making it the second-largest country in South America after Brazil, t ...
who cleaned of all known
bugs Bugs may refer to: * Plural of bug Arts, entertainment and media Fictional characters * Bugs Bunny, a character * Bugs Meany, a character in the ''Encyclopedia Brown'' books Films * ''Bugs'' (2003 film), a science-fiction-horror film * ''Bugs ...
. Also a
GNU GNU () is an extensive collection of free software Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any ...
default
Automake In software development, GNU Automake is a programming tool to automate parts of the compilation process. It eases usual compilation problems. For example, it points to needed dependencies. It automatically generates one or more ''Makefile.in' ...
/ Autoconf build system, which increases portability, has been implemented, making it very easy to add support for BSD systems in Fenix. Although SplinterGU mainly focused on stabilizing the 0.84 branch, he has also added some new capabilities to Fenix, like a better control of the debug console (also making it display more information). Some of the Fenix 0.8 developers have started a Fenix 2 branch, which should feature a completely rewritten core, on top of which users ( game developers) may plug the required
libraries A library is a collection of materials, books or media that are accessible for use and not just for display purposes. A library provides physical (hard copies) or digital access (soft copies) materials, and may be a physical location or a vir ...
, thus increasing flexibility and modularity. However, this second effort seems to be taking a long time, and no
ETA Eta (uppercase , lowercase ; grc, ἦτα ''ē̂ta'' or ell, ήτα ''ita'' ) is the seventh letter of the Greek alphabet, representing the close front unrounded vowel . Originally denoting the voiceless glottal fricative in most dialects, ...
or further news about the project has been given by its developers, so it might not be made public soon. SplinterGU, after publicly showing interest in separating the Fenix core from the rest of the interpreter, and some disagreements with some members of the community, decided to fork Fenix into BennuGD and continued working on this. BennuGD has come a long way and is currently in a much more advanced and stabilized state than the current version of Fenix (0.92a). The program has been separated into a core and multiple modules. The core has been much improved, for example by optimizing the process handling, the modules have been tidied up and many bugfixes have been done. In addition to these improvements, the language itself has been expanded with more functionality, like error handling and goto. Th
Bennu Forum
is quite active and th
Bennu Wiki
is a good source of documentation.


Running Fenix

Fenix comes as a console program. There are several IDEs around, being the most popular FBTwo_Project. Many other general-purpose IDEs can be easily adapted to it.


Forks

Fenix was succedded by Bennu, created by some of Fenix's developers.Eight successors of the mythical DIV Games Studio, the video game creation tool that triumphed in Spain 20 years ago
/ref> PixTudio was a fork of BennuGD, which was started as a mere custom engine for the video game 'eXplosive Dinosaurs'.


See also

*
Maggie (library) Maggie is a common short form of the name Magdalena, Magnolia, Margaret. Maggie may refer to: People Women * Maggie Adamson, Scottish musician * Maggie Aderin-Pocock (born 1968), British scientist * Maggie Alderson (born 1959), Aust ...


References

{{Reflist, 2


External links


Official SiteOfficial ForumEnglish WikiSpanish WikiResourcesNew FlameBird 2FlameBird 2Another English forum
Video game development software Scripting languages