-
Some font routines have been added. The supported font format is Jiri Babor's .f fonts (you'll find them in the m19demo\fonts directory). I also included Jiri's font editor in this package (I hope he doesn't mind).
Check out text.ex and text_2.ex for some examples on how to use the font routines.
- rotate() has been modified, rotating faces wasn't a very clever solution.
- Fixed some errors in the documentation.
-
m19lib has been split into modules for easier maintenance.
Just move all the .e files to your euphoria/include directory, including m19lib.e in a program will automatically include all the modules.
- Some routines for drawing of primitives have been added. See primitives.ex for examples.
Also see wire.ex, cube.ex and cone.ex for some examples of primitive-drawing together with the new math routines.
-
fade_sprite_tone_to(), fade_sprite_tone_towards() and sprite_rgb_add() were added.
- asm_display_clip() has been optimized for word- and dword aligned bitmaps.
- The constant no_delay can now be sent to all the fading routines. This will result in a normal fade, only much quicker.
- m19lib now uses the latest version of ports.e.
- I've fixed some stuff in this manual.
- The program fade.ex was added to demonstrate some of the new features.
-
fade_tone_towards(), swap_tone(), sprite_swap_tone() and rgb_add() were added.
-
All the fading routines now uses wait_vrt() as a delay, since it removes all the flicker and "snow" wich could occur in earlier versions.
Because of this, you can't call any fading routines after you've called free_asm_code() anymore.
Also, you'll have to use a greater value for your delays (the old value times 3 should work...).
Note: The wait_vrt() routines doesn't work properly on some (crappy) videocards and will put the program in an infinite loop (this has happened on one of the computers that I've tested the routine on, so I had to give it the good old Ctrl-Alt-Del to abort the program).
-
There was a bug in asm_sdisplay_clip() and asm_stdisplay_clip() wich led to an ugly error when the top of an image was off-screen. The bug has been fixed for this version (v 1.2).
-
No changes to m19lib but I wrote this manual in html format.
-
Routines for scaling bitmaps have been added: asm_sdisplay(), asm_stdisplay(), asm_sdisplay_clip() and asm_stdisplay_clip().
These routines may not be too well-optimized and they have problems with bitmaps that are wider than 320 pixels, but except from that they work fine.
See tryMe_2.ex for some examples on how to use the scaling routines.
-
remap_colors() has been completely rewritten. It's still a bit slow when handling large images.
-
Some color-manipulating routines have been added. These are: get_sprite_colors(), remap_colors(), fade_towards_rgb() and fade_sprite_towards_rgb().
-
The constant no_fading can now be sent to all fading routines. This will result in the routine only changing the palette-sequence, not the hardware palette-registers.
-
set_col() now is a function wich returns a palette.
- The file tryMe_2.ex was added. It's the same program as tryMe.ex except it demonstrates some of the new routines.
-
Ememcopy.e is no longer included in m19lib. The setup_emc() and ecopy_screen() routines have therefore been removed.
- m19lib now has it's own procedure for restoring the graphics mode, restore_graphics() (ripped from Pete Eberlein's Neil.e). As a result of this, graphics.e no longer needs to be included in a program that uses m19lib.
- The routines wait_vrt() and short_wait_vrt() have been added.
- The asm_display() routine has been modified to optimize for word- and dword aligned sprites. Drawing sprites wich horizontal dimensions are equally dividable by 4 is therefore very fast now.
- Some minor fixes and clean-ups have been done in m19lib.e and the m19lib demo.
-
The asm_copy_screen() routine was added. The m19lib demo was changed to use this routine instead of ecopy_screen().
-
All the display-routines have been speeded up. asm_display(), asm_cdisplay(), asm_display_clip() and asm_cdisplay_clip() are about 55% faster now.
The rest of the display-routines are about 13% faster than they were before.
The percentage-rates are calculated from the tests I made on my computer but they should at least be faster than before on any computer.
-
I found a small error in my explenation of poke_bitmap(), the returned sequence does not look like I said it did. I've fixed it now however.
- I've also fixed the example code at the end of this document, the graphics mode should ofcourse be set BEFORE calling set_pal().
Note 990419: The document mentioned came with earlier versions of m19lib and doesn't excist anymore.
-
The set_vga() procedure was added.
- The zip file now also contains a small demonstration program in the m19demo-folder.