Machine-Level

  1. GEN | Mini-Assembler | 30K | Pete Eberlein | Dec 30/01 |
    A tool for converting assembly language into sequences of machine code. Supports MMX instructions.
  2. GEN | Assembly Mini-Debugger | 34K | Alexander Toresson | Oct 10/04 |
    A tracer for asm code written for Pete's assembler. Runs in both DOS and Windows Oct 10: Windows version fixed, frontend gui fix
  3. GEN | Updated Assembler | 42K | Mic | Mar 31/08 |
    An update of Pete Eberlein's mini-assembler. It contains additional instructions not available in the original version, as well as some bug fixes and improvements. Mar 31: Added nearly all SSE4 instructions (untested). Work has also begun on adding x64 support, but this is incomplete and buggy.
  4. WIN | Serial Communications | 82K | Kondor Attila | May 2/05 |
    Some code that will help you get started using COM ports in Windows. May 2: Includes latest Pcomm Lite .dll, new demos and more
  5. DOS | svga.e | 23K | Hayden McKay | Mar 31/05 |
    A SuperVGA driver for Euphoria. Contains routines for SVGA mode access. It is NOT a graphics engine, but a source for people developing their own graphics engines. Also comes with a handy little memory include. Mar 1: Fixed some routines that were still pointing to euphoria's pixel() and get_pixel() Mar 31: Accidentally uploaded the update under old name (Hayden O'Connor)
  6. DOS | Keyboard Interrupt Handler | 2K | Michael Bolin | Feb 5/98 |
    a keyboard interrupt handler that can detect the status of all keys on the keyboard.
  7. GEN | sprite_core.e | 8K | Hayden McKay | Apr 18/05 |
    A good start for a fast sprite engine. Uses MMX if possible, otherwise uses scalar code. Has routines for overlaying sprites to tiles, bitmaps or directly to screen.
  8. DOS | Memcopy comparison | 37K | Emlyn Merlyn | Sep 7/04 |
    This demo proves that regular Euphoria mem_copy() is faster than an external machine language routine!
  9. DOS | Nokia LCD Display | 184K | Sotiris Bellos | Aug 16/03 |
    A driver for the LCD display used in Nokia mobile phones. The display module is connected to the LPT port of a PC.
  10. DOS | The Jacques Deschenes Collection | 24K | Jacques Deschenes | Mar 20/99 |
    His famous collection. This bundle of code includes: I/O Ports, file selection, reading the joystick, a menu system, INT 21 DOS functions, DMA controller and CMOS Info. Mar 20: ports.e and doswrap.e have recently been fixed.
  11. WIN | Flat-Assembler (wrapper) | 182K | Hayden McKay | May 28/07 |
    Similar to Pete's mini-assembler, it allows the programmer to use assembler syntax with Euphoria. May also be used as a runtime compiler to build an embedded dll, com, mz, pe or elf binary. For info about fasm syntax and directives look here. May 28: minor updates
  12. GEN | High Level assembler | 287K | mic | Jun 5/07 |
    A compiler/linker using Pete Eberline's mini-assembler with some high level constructs added on top (aka Not Quite Assembly). Additions in this version include compact linking mode, 16-bit DOS output (.COM) and some new flow control constructs (if, while, when).
  13. GEN | memory.e | 2K | Hayden McKay | May 2/05 |
    memory.e - handles some peek/poke routines not found in Euphoria. int86.e - enables an application to make real cs:ip far calls - can pass 32-bit parameters to DOS interrupts. May 2: Optimized calls made to real mode interrupts. Updated some notes found in the source.
  14. WIN | Parallel Port Monitor | 114K | Neil Fraser | May 9/03 |
    A parallel port monitor that works on everything from Win 95 to XP. It's a good example of how to access the parallel port from Euphoria.
  15. DOS | Disk Utilities | 9K | Craig Gilbert | Mar 2/98 |
    A well-documented set of routines for determining the status of all the disk drives.
  16. GEN | Assembler for Euphoria | 15K | Alexander Yakovlev | Feb 4/97 |
    a program that converts assembly language into sequences of machine code. This is his alpha release.
  17. GEN | Address Routing | 1K | Victor Kaprilian | Apr 23/01 |
    A program that compares the IP address and Sub Networking address of two different workstations on a LAN/WAN and determines whether routing is required or not.
  18. GEN | Get CPU Parameters | 2K | Pete Eberlein | Sep 17/99 |
    A routine that picks up detailed information about the CPU - who made it, does it have MMX, what kind of cache, the serial number, and much more.
  19. GEN | Machine2 (v1.06) | 18K | Shian Lee | Dec 23/17 |
    Machine2.e includes basic utilities, bitwise operators and machine level interface routines for Euphoria 3.1.1 (peek2, poke2, EQV, IMP, shift, rotate, pack, unpack, set, get, binary, octal, decimal, hexadecimal, flatten, boolean, string, fix, sign, delay, pause, ...). Includes standard user manual. Dec 23: unpack_bits() now using floor() and it's much faster
  20. GEN | Machine2 (v1.01) | 15K | Shian Lee | Mar 17/17 |
    Machine2.e includes basic utilities, bitwise operators and machine level interface routines for Euphoria 3.1.1 (peek2, poke2, EQV, IMP, shift, rotate, pack, unpack, set, get, binary, octal, decimal, hexadecimal, flatten, boolean, string, fix, sign, delay, pause, ...). Includes standard user manual. Mar 17: string() type is faster. Tip to speed up 'for' loops.
  21. WIN | CPUID | 54K | Hayden McKay | Dec 3/15 |
    cpuid instruction global variables, supports all processors. Developed for Euphoria 4.1 32-bit.
  22. WIN | fasm4e | 52K | Hayden McKay | Dec 3/15 |
    New bug fixes and support for generating x86 and x64 machine code. Extract folder to include directory, runs on WIN32-OS, tested with Euphoria 4.1.
  23. WIN | Simple text to PCL converter | 5K | Karoly Kovacs | Jul 11/09 |
    The program will provide PCL strings that cause your printer to print a plain text file with *exactly* the right font - i.e. the exact font needed to fill the page with as many fixed width characters across and down as you specify. In addition to providing for your desired width and height layout, the provided PCL strings will also cause the printer to honor your other desires regarding paper size, paper orientation, sides printed, and number of copies. Jul 11: Description updated.
  24. GEN | Pentium Bug Check | 1K | Nahuel Carballo | Aug 3/08 |
    If your program uses FPU functions, some older Pentium processors will give incorrect results. This Euphoria code checks for this annoying bug and alerts the user. If the user types the command this code recommends, he/she will turn on Software FPU Emulation (for DOS). Aug 3: English translation, removed useless comment.
  25. WIN | cpu frequency | 1K | jacques deschĂȘnes | Aug 15/07 |
    A console application to display cpu running frequency.
  26. WIN | Ds1620-2 | 255K | Wolfgang Fritz | Dec 9/06 |
    A Win32lib interface to the Dallas Semiconductor DS1620 temperature sensor IC. Includes schematics, EXE, and source code.
  27. WIN | GPGPU with ATI Fix | 209K | Daniel Kluss | Nov 12/05 |
    Updated with a temporary ATI fix, which once the real problem is tracked down will probably be removed. This turns your programmable gpu into a cpu, a massively parallel cpu. Have fun, requires vs.2 vertex shader with branching, and fs.2 fragment shader (branching not used). GeForceFX or better. Updates soon, probably going to make GPU-Core-Wars. Nov 12: A hopeful fix for ATI incompatability. Please mess around with this, as he doesn't have an ATI card to test with.
  28. WIN | Papou32 | 14K | Neo | Oct 18/05 |
    Parallel Port Out 32 (Papou32) is a program to control the parallel port under Windows XP/NT/2000 while entering simply a value from 0 to 255, it uses the library inpout32.dll.
  29. GEN | clock.e | 3K | Hayden McKay | Apr 6/05 |
    Machine code routines to read the CMOS RTC registers. Apr 6: Incorrect byte in machine code fixed. Tested on many machines, and library is now final.
  30. GEN | blur_addr | 1K | Hayden McKay | Mar 21/05 |
    Blur a region of memory from source to destination. Uses Pete's asm2.e.
  31. DOS | DOS Interrupt routines | 19K | Hayden McKay | Aug 31/04 |
    A basic set of DOS interrupt routines for Euphoria DOS32 coders. Aug 31: Fixed Specific_Drive_Info() in DOS32.E also added an asm replacement for this s[1]*s[3]*s[4] = free space, s[1]*s[2]*s[3] = total space.
  32. DOS | Some ASM examples | 1K | David Eltrosoft | Jul 9/04 |
    An assembly language example. It shows how to use imul multiply. Requires ATP Assembly Mini-Debugger by Alexander Toresson, Jul 9: imul example
  33. WIN | Eutendo - A NES emulator | 28K | mic | Nov 9/03 |
    A NES emulator written in Euphoria. It's a bit slow and only supports 3 mappers, but is still functional.
  34. DOS | Read/Write IC on Parallel Port | 139K | David Jarvis | Oct 30/03 |
    Code that demonstrates how Euphoria can be used to read and write to integrated circuit chips via the PC's parallel port. In this example, the IC is the TLC542 A to D converter by Texas Instruments.
  35. WIN | Get Drive Info | 3K | Al Getz | Aug 30/03 |
    Some code that will determine which drives exist on a machine, and which are available. Win32Lib not required. Aug 30: you can get sizes in units of 1, 1000, 1024, 1000 * 1000 or 1024*1024, and you can easily use this file as an include file.
  36. DOS | Keyboard Lights | 18K | Daniel Kluss | Aug 13/03 |
    A demo that makes use of the new feature in Euphoria where you can define a machine code routine using define_c_func/proc(). (May not work on all versions of DOS)
  37. DOS | Read/Write Parallel Port | 7K | David Jarvis | May 18/03 |
    Files for reading and writing to the parallel port. It uses Jacques Deschenes' ports.e.
  38. WIN | I/O Ports | 1K | Jesus Consuegra | Dec 10/01 |
    Sample code for accessing I/O ports using dlportio.dll.
  39. DOS | COM1 Interrupt Handler | 4K | Jean Marie Decru | Nov 22/00 |
    Example code for handling interrupts on a COM port.
  40. DOS | DOS Interrupt Tester | 53K | CenSe | Jun 23/00 |
    A program that lets you test DOS interrupts. It uses David Cuny's text-mode GUI.
  41. DOS | Simple DLL compiler/loader | 30K | Patrick Quist | May 3/00 |
    A simple mechanism for assembling routines into a kind of .DLL file so they can be later loaded and executed. May 3: bug fixes, supports most registers as arguments
  42. DOS | Are Drives Ready? | 5K | Craig Gilbert | Nov 11/97 |
    code for testing floppies, CD's and hard drives. He uses a special interrupt handler.
  43. DOS | Serial I/O | 3K | Peter Blue | Jun 8/97 |
    a simple terminal program that lets you dial your modem and communicate with another machine. Many people have asked for something like this. Be sure to edit the correct COM port number of your modem into his program before running it.