Fixed a part of the data dump part.
Changed the line of perl script from / usr / bin / perl to / usr / local / bin / perl.
(On FreeBSD, Japanese perl is in / usr / local / bin)
For disp.c, libwwc.c, a function for reading and acquiring bitmap data of characters,
The type of bitmap data is not unsigned char *, but instead of short int *, long int *
It was modified to an appropriate type.
Let the bitmap of the WWCharacter class be union of uchar, ushort, ulong,
By accessing with an appropriate type in WWCharacter_GetPixel ()
The endian dependence of bitmap data is eliminated. (i386, confirmed by SPARC)
Fixed how to get the value of WWCharacter_GetPixel () in 16 PACKED color mode.
(The bug that the character was displayed inverted horizontally was resolved)
Stop for 10 seconds at F11, forcibly end with Ctrl-c or F12,
Added iconization with Ctrl-i. (It was a function that was originally, but I forgot that,
We modified it somewhat to make it formal support)
Move display / non-display change key from p to F10. Manual correction.
XDisplay.c: generated with XColorGC_CreateFromRGB () with XDisplay_DrawLCDWindow ()
Since we did not Destroy () the XColorGC object, we made a bug that caused memory flow
Fix. (XColorGC_Destroy (x_color_gc) addition)
Add wonx_include / fcntl.h. The contents are / usr / include / fcntl.h,
Just include /usr/include/sys/fcntl.h.
Format change of serial output message (output to serial port:).
(I tried to enclose it with "".)
etc.c: wonx_print_character () Fixed. (Add \ ", \ \ and others)
Fix sout2str.pl. (Add \ ", \ \ etc .... The above message for serial output
It was modified according to format change)
Added int2sint.pl, filters.pl, challsrc.sh.
Change sys2wonx.pl.
in wonx_include / types.h
typedef unsigned short WORD;
typedef unsigned long DWORD;
To
typedef unsigned short int WORD;
typedef unsigned long int DWORD;
change to.
Fixed README.
Version 2.1 - from wonx-2.1.tar.gz
Corresponding to colorization, transparent (transparent color) judgment processing from the WWPalette class
I moved to the WWDisplay class.
Changed the pixel of WWLCDPanel to unsigned short int *. (Color correspondence)
Change the storage format of text fonts. (WWTextFonts.c)
In text display, when displaying WWDisplay_GetForegroundColor (),
Fix to copy by looking at WWDisplay_GetBackgroundColor (). (WWText.c)
(It is no longer necessary to reserve an array of WWCharacter in the WWText class,
Which to delete)
Added palette of border color to WWDisplay class.
We made correspondence to colorization, and added other various corrections.
(Character data storage method, text display, border color processing etc)
With display_control (), display_status (), the bit shift of the border color
Fixed a bug that was 7. (Fixed to 8)
Key input such as F1 is also accepted during loop waiting for interrupt in while (1) {/ * none * /}
Fixed as. (WonXSystem.c's timer interrupt callback function
Add WonXDisplay_PrintData () to WonXTimer_Callback ())
Added fcntl_attention.h, filesys.h, indirect.h, oswork.h, process.h.
(Just include the contents or include appropriate files)
In wonx_configure.h,
Fixed a bug that was supposed to be.
Version 2.0 - from wonx-2.0.tar.gz
Set FP_OFF (), FP_SEG() for the callback function at interrupt setting in WonderWitch
Adjust appropriately according to the setting method. (Fit to wwterm)
UNIXTimer.c: UNIXTimer_Unpause()
((unix_timer -> pause == 1) && (unix_timer -> interrupt_in_pause == 0))
Fixed a bug that was not unix_timer-> pause--; when it was.
(It was not unposted when interrupt was not applied during pause)
Serial receive interrupt, keyboard interrupt added. (corresponding to wwterm, operation confirmed)
Added UNIXSerialPort class.
With this, at WonderWitch,
com_intvector.callback = (void (near *) ()) FP_OFF (com_handler);
com_intvector.cs = _ asm_inline ("\tmov \tax, cs");
com_intvector.ds = _ asm_inline ("\tmov \tax, ds");
sys_interrupt_set_hook (SYS_INT_RECEIVEREADY,
& com_intvector, & com_last_intvector);
Interrupt setting like that shown in Fig.
For warning, add WonX_Warning ().
Move WonX_Error () to WonX.c.
comm_send_string (), text_put_string (), text_put_substring () When executed
Fix output message.
Implement cursor display function. (Add WWCursor class) (Do not blink. Display only)
When displaying the cursor, text information inside WWDisplay_DrawLCDPanel ()
Since we need to be able to read it, we will discontinue the WonXText class and add the WWText class
I moved to a member of the WWDisplay class.
In palette_get_color (), transparent color is displayed when executing WWPalette_GetMappedColors ()
Since it was not considered to be returned as -1, palette_get_color ()
Fixed a bug where return value was wrong value.
Character color palette, LCD color palette initial value, with WonderWitch
It was made to coincide with the initial value.
As a sample, add wwterm - b 05. (Add wwterm target to Makefile)
Version 1.1 - from wonx-1.1.tar.gz
Fix comm_input() in comm.c. (See the e-mail of [WitchFan 00462])
Instead of error termination when displaying text characters outside the screen,
Fix WWText_PutCharacter() to proceed with issuing a warning.
(Correspondence to one person)
Add #define _WONX_ to wonx_include/types.h. (The part you want to depend on WONX
For when you want to enclose in source)
Version 0.5 beta - from wonx-b05.tar.gz
Fix to reconfigure.
(Add signal () in UNIXTimer_ON ())
(In IRIX, coping with the fact that the callback function is cleared for each call)
Since ualarm () is BSD dependent, it is modified to use alarm ().
Unit Timer class interval time setting unit changed from microseconds to milliseconds.
Supports serial communication. (See WonxSerialPort, WWSerialPort, comm.c)
With printf () in key.c, when the function name was not displayed when displaying the return value
Fix.
Version 0.4 beta - from wonx-b04.tar.gz
Since there is a possibility that the Error () function will collide with libwonx.a when linking,
It changed to Wonx_Error ().
Added bios_exit ().
sprite_set_char, sprite_get_char, palette number minus 8
Fixed bug that was not specified.
font_set_monodata (), font_set_colordata (), font_get_data (), disp.c,
The arguments of screen_set_char (), screen_get_char (), sprite_set_data ()
Changed from void * to appropriate type.
Sample program and attached SpeedMac.
I added a document.
Version 0.3 beta - from wonx-b03.tar.gz
(UNIXTimer, WWInterrupt, WWTimer, WonxSystem addition)
According to interrupt support, compatibility functions are replaced with UNIXTimer_Pause (), UNIXTimer_Unpause ()
It hung around.
UNIXTimer, WWTimer, WonxSystem's callback functions,
It is necessary to check finely whether there are bugs peculiar to interrupts.
(The setting of the interrupt in the callback function may change, or from the callback function
It is necessary to check whether the callback function is called or not)
Version 0.2 beta - from wonx-b02.tar.gz
Changed to create Wonx class and manage all resources with Wonx class.
(See Wonx.x WonxP.h)
When p is pressed to switch display / non-display of the screen, redraw the LCD panel
Improvement.
Added -Wall to compile option.
We have summarized the processing part of the function which is duplicated processing in disp.c.
Version 0.1 beta - from wonx-b01.tar.gz
Fixed not to draw. Reduced the load on the X server.
(Improvements related to WWLCDPanel and XDisplay_DrawLCDWindow () of XDisplay.c)
(XDisplay_DrawLCDWindow () in XDisplay.c has useless malloc ()
Improvement is necessary of that)
In WWDisplay.c (WWDisplay_DrawScreen ()) of wonx-a 05 and wonx-a 06
As a result of trying both, wonx - a 05 was faster, so wonx - a 05 was better
I decided to use it.
Version 0.0.7 alpha - from wonx-a07.tar.gz
It did not get much faster. When the X server drawing is a hot spot
Since it seems, efforts to reduce drawing amount are necessary.
Version 0.0.6 alpha - from wonx-a06.tar.gz
Fix WWDisplay_DrawScreen (). I put useless calculations out of the loop.
After examining the hotspot, the drawing part of X (XDisplay_DrawLCDWindow () in XDisplay.c
Loop part) became a hot spot, so arrange the array for each pixel
I made it and raised drawing speed.
Version 0.0.5 alpha - from wonx-a05.tar.gz
Changed method of storing WWLCDPanel data.
(I made 1 byte allocated with 1 pixel as 1 byte with 2 pixels)
(For speeding up, thought about future color correspondence (241 colors?))
Added WonxDisplay_Sync (). Reduced wasteful drawing in functions of get type.
Implement sprite window function. (Not tested)
Implement time related functions. (timer.c)
Fix sprite priority. (I modified "Priority is given to younger one")
Version 0.0.4 alpha - from wonx-a04.tar.gz
In the explanation of screen 2 _ set _ window () of the manual, "width and height of the display area"
Although it is written, in fact it operates with "horizontal width of display area + 1 and vertical width + 1"
want to see? (Unconfirmed), do not you have to do -1?
Or, in actual operation in WonderWitch,
ex = sx + WWScreen_GetDrawWidth (screen);
Not
ex = WWScreen_GetDrawWidth (screen);
It may be.
Implemented sprite enable / disable.
LCD color map, palette, character, sprite data dump function implemented.
Improve display message when calling function.
Version 0.0.3 alpha - from wonx-a03.tar.gz
At the very least I output the character string to the terminal.
We implemented the window function of screen 2.
Version 0.0.2 alpha - from wonx-a02.tar.gz