cross platform java
SIMD Cross-platform headers 2004.10.26
SIMD Cross-platform headers is a cross- platform, cross-compiler, cross CPU C/C++ header collection. more>>
SIMD Cross-platform headerst supports (or partially supports) x86 (MMX/SSE/SSE2) GCC and MSVC, PPC Altivec GCC and CodeWarrior, ARM GCC, and software-emulated SIMD.
NOTE: Code must be 16-byte aligned. Align to 16 when allocating memory.
X86/XSCALE (Intel) vs. PowerPC/MIPS
While the PowerPC and MIPS SIMD instructions take 2 source vectors and a destination vector, the Intel platforms only take a source and destination. Example:
PPC/MIPS can do:
C = A + B
X86 can only do:
A = A + B (or A+=B)
Code written either way will work on the X86, and still be faster than 387 math, but preserving the registers takes significant overhead (Disassemble the test program for an example. The prints preserve, the disassembly test does not.) For the fastest code between systems, write your SIMD math as the X86 expects, manually preserving SIMD variables.
At least GCC for PPC doesnt seem to have any issues figuring out how to deal with a source and destination memory address being the same.
Enhancements:
- Created file with some i386, GCC dialect
Cross Platform Toolkit Library (xtklib) 0.2.0 Alpha
Cross Platform Toolkit Library(xtklib) is a C++ based framework for highly object-oriented cross-platform programming. more>>
In particular, the library provides a full abstraction layer between its API and the main services offered by the underlying operating system(Thread, processes,GUI,Filesystem,etc.) plus a set of generic utilities (Strings,Data structures,etc.).
Unlike other famous libraries, xtklib makes full use of all features of C++ like RTTI, Templates, Exceptions thus obtaining a strongly object-oriented design with a Java-like sensation.
The library is composed by two main modules: "Base" and "Widgets". The target operating systems are Windows and Unix(Linux and BSD in primis) with a plan to move also towards other systems.
Main features:
- Use of modern C++ - use of many powerfull features offered by modern C++ like exceptions,RTTI,templates and namespaces allows faster development,improves code readability,and reduces programming errors.
- Strong Object-Oriented design - designed to meet requirements of modern software industry: modularity, low coupling, high cohesion,information hiding. Design patterns and advanced class hierarchies are extensively used in all the library.
- Ease of use - Clean and intuitive programming interface with a Java-like sensation.
- Complete - Features supported includes:
- Basic services: Thread, Synchronization, Filesystem access, Processes, Networking.
- Advanced services: I/O Streams, Logging.
- Debugging tools: Stack tracing, Memory Leak detection.
- Gui widgets (Work in progress): Windows,Frames,Layout managers,common controls,advanced controls.
- Generic utilities: complete data structures framework, String class with unicode support.
- Full unicode support: native support to unicode, conversion to/from different charsets.
- And many others: the list is too much long to enumerate all minor but extremely usefull features.
- Cross Platform - Supports various systems and compilers.
- XTKlib is known to work under:
- Windows XP (x86)
- Visual C++ versions 7.1, 8.0
- MinGW32
- Linux (x86, x86_64)
- GCC 3.4
- Compatibility with other platforms and compilers are not excluded.(If you can compile/use xtklib with a non listed compiler/platform let us know about that, thanks)
- Fast - Although performance are not the main goal of this library (exceptions and RTTI have a tradeoff in this meaning), code agility and execution speed are often taken in consideration during development, thus leaving a performance advantage compared to interpreted programming languages(eg. Java,C#) or scripting languages(eg. Python,Ruby,Perl).
Enhancements:
- This is the first release with a working "Widgets" module, although it has only basic features.
- This release is provided for testing and development only.
CrossFTP for Firefox 1.03
CrossFTP for Firefox is a versatile Cross-Platform FTP client extension. more>>
This plugin contains two FTP tools: CrossFTP Client and Server. which will appear in the Firefoxs Tools menu:
- CrossFTP Client is a versatile GUI FTP client for multiple platforms. It uses a familiar, Explorer-like interface that even the most novice user can master in minutes.
- CrossFTP Server is a professional FTP Server for multiple platforms. It offers you a high-performance, extremely configurable, and most of all a secure FTP server.

Hibernate Core for Java(Linux) 3.2.5.ga
An object/relational persistence and query service for Java more>> <<less
Java Platform Invoke API Demo (Linux) 2.01.04
Java Platform Invoke API (Demo version) for Linux, i386. Enables Java code to call native functions implemented in shared libraries like in Microsoft .NET Framework. Written for JSE 1.5.x and later. more>>
Java Platform Invoke API Demo (Linux) - Java Platform Invoke API (Demo version) for Linux/Unix, i386.
Enables Java code to call native functions implemented in shared link libraries like in Microsoft .NET Framework. Written for JSE 1.5.x and later.
Java platform invoke an API that enables Java code to call native functions implemented in shared libraries, such as those in the Linux API. It locates and invokes an exported function and marshals its arguments (integers, strings, arrays, structures, and so on) across the interoperation boundary as needed. This API supports implicit marshaling that makes Java coding with native functions very simple.
To consume a shared library functions you need
1.Identify functions in shared librarys.
Minimally, you must specify the name of the function and name of the the shared library that contains it.
2.Create a class to hold shared library functions.
You can use an existing class, create an individual class for each native function, or create one class that contains a set of related native functions. This class should extend CNativeLibrary. Use the annotation ImportLibrary to bind your class to the native library.
3.Create prototypes in Java code.
Write prototype of a native function as a method with signature that corresponds to the native function using data type map agreement. To identify the native function use the annotation Function. Mark the method with the native modifier.
4.Call a shared library function.
Call the method on your Java class as you would any other Java method. As parameters can be passed structures and implemented in Java callback functions.
Enhancements:
Version 2.01.04
System Requirements:JSE 1.5.x<<less
Sun Java Platform Enterprise Edition 5 Update 2
Sun Java Platform Enterprise Edition is the industry standard for developing portable, robust Java applications. more>>
Building on the solid foundation of Java SE, Java EE provides Web services, component model, management, and communications APIs that make it the industry standard for implementing enterprise class service-oriented architecture (SOA) and Web 2.0 applications.
Filler in Java 1.02
Filler in Java project is a graphical game where you occupy coloured hexes by changing colours. more>>
Its strengths are better computer players, internationalisability, and cross-platform deployability.
Installing
In the top directory (same directory as this file), run make. That will build a jar file for you. You then need to be super-user (root), and run make install. If you cant be super-user, just do java -jar filler.jar instead.
The executable program is called filler, and will be installed in /usr/local/bin. Since release 1.01, filler will use your shell variable LANG to set the language that it runs in.
Enhancements:
- Added inc to other directory. This is the code header you include to say that the code is released under GPL.
- Removed resources_de.properties, resources_fr.properties, as I wrote them and they were pretty bad.
- Added sortByRandom() to PlayerWrappers.
- Added build.xml to other. This is for use with ant.
- Cleaned up some access privileges on some fields, cleaned up some bad identifiers.
- Added Kris Verbeecks RemotePlayer.
tpm4java 0.9.0
tpm4java is a library for accessing trusted platform modules in your Java applications. more>>
tpm4java runs on Linux and Windows systems and can use version 1.1b and version 1.2 TPM modules.
Keystone Application Framework 0.9.6
Keystone is a cross-platform, object oriented application framework. more>>
Keystone Application Framework implements several modern Web standards, including SVG graphics and the XUL user interface description language.
Enhancements:
- A significant development in this release is the optional use of the GDI+ (Win32) and CairoGraphics (Linux) rendering backends to render SVG content.
- In addition, support for SVG paths has been much improved with the ability to render bezier and elliptical segments.
Nemesis Pascal 0.1
Nemesis Pascal is an Pascal interpreter. more>>
Free
Open Source (GPL)
Cross-platform (currently Windows and Linux)
Nemesis Pascal is written in Delphi and Kylix. Borland CLX libraries supplies the cross-platform features.
The Nemesis Pascal applications runs on Windows using native controls, and Linux using the CLX Library (a binding to Qt Trolltech).
Exemple:
unit test1;
interface
implementation
procedure main;
begin
ShowMessage(Hello World!);
end;
end.
Canorus 0.2.5
Canorus is a free cross-platform music score editor. more>>
Canorus supports an unlimited number and length of staffs, polyphony, a MIDI playback of written notes, chord markings, lyrics, a number of import and export filters to many formats like MIDI, MusicXML, ABC Music, MUP, PMX, MusiXTeX and LilyPond and more!
Canorus is evolving quickly.
BushSweeper 0.5
BushSweeper is a clone of minesweeper game and it is cross platform. more>>
Cpop 0.7
cpop is a network popup message system that uses the jpop protocol and a simple GTK+ interface. more>>
This version is the UNIX/GTK+ native version. The cross-platform, Java version is called jpop.
DoxMentor4J 0.1
DoxMentor4J is a standalone cross platform Web/Ajax based documentation library. more>>
Users create the library content structure and copy any online books or manuals into directories in the library structure. DoxMentor4J then provides a dedicated web server which presents the library as a tree structure on a web page. Users can navigate through the tree to locate online books. The tree is AJAX based so there is no large initial download of all the nodes in the content structure, instead the nodes are downloaded as they are opened.
Because DoxMentor4J is a cross platform Java based application, user can write their online library to CD/DVD or flash and have it available wherever they go on different machines and operating systems.
The web server framework classes used by DoxMentor4J is called HttpdBase4J and it supports content inside archive files or in jar and zip files in the Java classpath. The content can therefore be hosted in one compressed file, and as many documentation files are often text based this means the space saving can be meaningful. Additionally it can be more convenient to have all the content in one file.
This software also supports full text indexing and searching of content using the Lucene library. Content indexing may be enabled/disabled on a node by node basis. Search indices can be accessed inside an archive or on cd/dvd. The indexing code currently supports text, html, pdf, chm and djvu.
BluePlayer 0.66
BluePlayer is a cross-platform, simple, light sound player. more>>
Main features:
- Cross platform
- Simple Light
- for GUI using FLTK widgets http://www.fltk.org/
- uses a Audiere sound library http://audiere.sourceforge.net/
- Supported file formats: Uncompressed WAV*, Uncompressed AIFF*, Ogg Vorbis*, FLAC*, MP3, MOD, S3M, IT, XM (* supports seeking)