Rev 7866 | Rev 8350 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 7866 | Rev 7889 | ||
---|---|---|---|
Line 62... | Line 62... | ||
62 | ESDWORD[i] = color; |
62 | ESDWORD[i] = color; |
63 | } |
63 | } |
64 | } |
64 | } |
65 | } |
65 | } |
Line 66... | Line 66... | ||
66 | 66 | ||
67 | void DrawBufer::WriteText(dword x, y, byte fontType, dword color, str_offset) |
67 | void DrawBufer::WriteText(dword x, y, byte fontType, dword color, str_offset, strlen) |
68 | { |
68 | { |
69 | #define BUGFIX_32000 32000 |
69 | #define BUGFIX_32000 32000 |
70 | dword ydiv=0; |
70 | dword ydiv=0; |
71 | dword reserve_data_1, reserve_data_2; |
71 | dword reserve_data_1, reserve_data_2; |
72 | dword new_buf_offset; |
72 | dword new_buf_offset; |
73 | if (y + 30 >= bufh) IncreaseBufSize(); |
73 | if (y + 30 >= bufh) IncreaseBufSize(); |
- | 74 | if (y < BUGFIX_32000) { |
|
74 | if (y < BUGFIX_32000) { |
75 | ESI = strlen; |
75 | WriteBufText(x, y, fontType, color, str_offset, buf_data); |
76 | WriteBufText(x, y, fontType, color, str_offset, buf_data); |
76 | } |
77 | } |
77 | else { |
78 | else { |
78 | ydiv = y / BUGFIX_32000 * BUGFIX_32000; |
79 | ydiv = y / BUGFIX_32000 * BUGFIX_32000; |
Line 82... | Line 83... | ||
82 | reserve_data_1 = ESDWORD[new_buf_offset]; |
83 | reserve_data_1 = ESDWORD[new_buf_offset]; |
83 | reserve_data_2 = ESDWORD[new_buf_offset+4]; |
84 | reserve_data_2 = ESDWORD[new_buf_offset+4]; |
Line 84... | Line 85... | ||
84 | 85 | ||
85 | ESDWORD[new_buf_offset] = bufw; |
86 | ESDWORD[new_buf_offset] = bufw; |
- | 87 | ESDWORD[new_buf_offset+4] = bufh - y; |
|
86 | ESDWORD[new_buf_offset+4] = bufh - y; |
88 | ESI = strlen; |
Line 87... | Line 89... | ||
87 | WriteBufText(x, y, fontType, color, str_offset, new_buf_offset); |
89 | WriteBufText(x, y, fontType, color, str_offset, new_buf_offset); |
88 | 90 | ||
89 | ESDWORD[new_buf_offset] = reserve_data_1; |
91 | ESDWORD[new_buf_offset] = reserve_data_1; |