jiri's euphoria page
Euphoria is a simple, powerful programming language.
Learn more about it at Euphoria Home Page .
You will notice this a totally Windoze free zone!
In my spare time I code for fun.
Almost all code below is my own, but I have also included few gems
by other people, the stuff that should be in everybody's toolbox. The
credit is given where ever the original author is known, but if I
missed anybody, please let me know!
The code is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
This software is freeware. You are allowed to use it in your own
projects without any restriction. There is no warranty at all. Use
this software at your own risk. I do not assume any responsibility
for any damage or any loss of time or money due to the use of any
part of the software.
version 5.30 (6 kb)
Experimental version, but very stable. Slimmer, simplified. Major
changes: fancy backgrounds and vertical writes removed, a handful of
new routines for easier access to all font properties, totally
Any feedback will be much appreciated!
A reference for the new version (5.30) to help you with your
- putsxy.zip (4 kb)
The latest version of the popular David Alan Gay's program.
This is my variant with optional CLEAR (transparent)
background, slightly faster, more reliable than the original, and it
does not require explicit initialization.
version 1.60 (14 kb)
Poor man's graphic fonts: similar to the popular putsxy, but faster
and much more flexible with tiled and/or transparent backgrounds,
horizontal as well as vertical text orientation, 'on-the-fly' color
change, a prompt, selectable line justification, font magnification
and char and line pitch.
Is is also broadly compatible with my font.e for painless
The system is now completely self-contained with two sets of
built-in ROM fonts: 8x8 and 8x16 (default).
A nice new demo with a running banner and several scaling examples
is also included.
- border.zip (1 kb)
Set border color in mode 19 (normally color 16).
- fill.zip version 1.10 (13 kb)
Very fast, versatile flood (replace all adjacent same color pixels) and fill (fill to border of specified color) routines for pixel graphics.
- map.zip version 0.40 (55 kb)
Map.e is my favourite offspring, probably one of the finest examples of pure Euphoria code: map an arbitrary polygon within a texture sequence to any convex screen polygon with the same number of
vertices. Both actual (video) as well as virtual screens are supported. Several nice demos are also included.
version 1.00 (4 kb)
Fast and flexible palette manipulation routines. Also includes ports.e by Jacques Deschenes.
- rat.zip version 2.40 (12 kb)
A simple, universal, multi-color and transparent alternative to the standard mouse in all graphics modes, including superVGA. 13 alternative cursors as well as a dragbox module are now incorporated
in a single include. The package also contains a short reference and two little demos.
- rotate.zip (1 kb)
Improved 3 D rotation function. Fast, with optional compensation for non-square pixel in mode 19.
- shiftpal.zip version 1.00 (2 kb)
This program displays a given 8-bit bitmap file ('.bmp' extension) and detects the number of unused colors from 256 color palette. It re-arranges the palette as well as the bitmap to free the start of the palette for other uses and re-displays the modified bitmap. If you are satisfied with the result, you can save it too! ;)
- tellipse.zip Fast tiled ellipse routine for pixel graphics.
- tile.zip Very fast pattern replication / tiling routines.
- tpoly.zip Fast tiled polygon routine for pixel graphics.
- turn.zip Turn 2-d sequence (image, 2d pattern, matrix, etc) 90 degrees, clockwise or anticlockwise. Reasonably fast.
- turtle.zip Turtle graphics (18 kb)
- vgraph.zip version 2.40 (33 kb)
Major update of my virtual screen library. Faster elements, rle sprites, new mapping routines (texture mapping & Gouraud shading), new demos.
- widgets.zip version 10.20 (99 kb)
A new version of my DOS GUI system: some basic GUI elements, from buttons and checkboxes to complete menus and file selectors. Plus a ton of other useful routines, in fact a reasonably complete SVGA 2-d environment.
Plenty of simple, easy-to-follow test examples. Docs included!
- z.zip version 0.10 (11 kb)
A set of z-buffer mapping routines with a couple of demos. Again just pure Euphoria : flat colored polygons, Gouraud shading, polygon-to-polygon texture mapping (similar to map.e above) plus transparent color option. Caution, please, very much work-in-progress only!
- replace.zip version 1.10 (2 kb)
Search-and-replace text in files - command line utility.
- text.zip version 1.12 (6 kb)
Routines for fast display of text in text modes using direct memory pokes.
Main features: independent text pointer, selectable line justification, prompt with primitive editing, 'on-the-fly' change of color attributes, multiple pages.
- trim.zip (1 kb)
Trim 'white space' from either or both ends of a string. Fast.
- abs.zip (1 kb)
A choice of several alternative absolute value functions, handling objects of
- bfind.zip (1 kb)
Binary search of a sorted sequence. Gabriel Boehme code. Earlier Joe Otto's routine is almost identical.
- hashtab.zip version 1.00 (4 kb)
An older version of hashed tables (associative arrays).
- htables.zip version 4.11 (6 kb)
Hybrid sorted tables, a version of keyed lists using ordinary find function for shorter tables, and binary search for longer ones. An html reference included.
- mat.zip version 1.00 (2 kb)
My own collection of matrix routines: identity, transpose, multiply, trace, determinant, inverse, etc. Also a lame attempt at formatted matrix print...
- pack.zip version 1.10 (5 kb)
My own, pattern based lossless file compressor / decompressor. Slower than Junko's implementation of Huffman algorithm, but gives generally better compression rates for smaller files, up to about 75
kbytes. An include for use from within a program added. Nasty bug removed (30 Jan 00).
- stables.zip version 4.11 (6 kb)
Sorted tables, a new version of keyed lists using binary search. A short html reference included.
- tables.zip tables v 5.20 and hashed tables v 3.00 (4 kb)
A new version of tables (some times called keyed lists, or dictionaries, or associative lists). Also a new, faster version of hashed tables. Short references included.
- deal.zip (2 kb) A simple random bridge hand generator.
- hiscores.zip (2 kb)
Not a game! Just an include to add a simple 'Hall-of-Fame' feature to your games. Instructions included.
- twins.zip version 1.21 (66 kb)
An update of possibly the only 'original' game written in Euphoria so far...
'Hall-of-Fame' added. Also prettier : four different, random backgrounds, some of them edible.
- rain.zip (2
Color rain: nice variation of Bloodrain by Nemesis.
project X : my dream toy language
european trip 2005
This website maintained and coded by jiri babor.