|
|
| version 1.3, 2003/12/12 01:04:40 | version 1.6, 2005/02/09 20:11:34 |
|---|---|
| Line 5 | Line 5 |
| #include "fontdata.h" | #include "fontdata.h" |
| static void pc88knjcpy1(BYTE *dst, const BYTE *src, int from, int to) { | static void pc88knjcpy1(UINT8 *dst, const UINT8 *src, int from, int to) { |
| int i; | int i; |
| int j; | int j; |
| int k; | int k; |
| const BYTE *p; | const UINT8 *p; |
| BYTE *q; | UINT8 *q; |
| for (i=from; i<to; i++) { | for (i=from; i<to; i++) { |
| q = dst + 0x21000 + (i << 4); | q = dst + 0x21000 + (i << 4); |
| Line 42 const BYTE *p; | Line 42 const BYTE *p; |
| } | } |
| } | } |
| static void pc88knjcpy2(BYTE *dst, const BYTE *src, int from, int to) { | static void pc88knjcpy2(UINT8 *dst, const UINT8 *src, int from, int to) { |
| int i, j, k; | int i, j, k; |
| const BYTE *p; | const UINT8 *p; |
| BYTE *q; | UINT8 *q; |
| for (i=from; i<to; i++) { | for (i=from; i<to; i++) { |
| q = dst + 0x21000 + (i << 4); | q = dst + 0x21000 + (i << 4); |
| Line 78 const BYTE *p; | Line 78 const BYTE *p; |
| } | } |
| } | } |
| BYTE fontpc88_read(const char *filename, BYTE loading) { | UINT8 fontpc88_read(const OEMCHAR *filename, UINT8 loading) { |
| FILEH fh; | FILEH fh; |
| BYTE *work; | UINT8 *work; |
| char fname[MAX_PATH]; | OEMCHAR fname[MAX_PATH]; |
| work = (BYTE *)_MALLOC(0x20000, "pc88font"); | work = (UINT8 *)_MALLOC(0x20000, "pc88font"); |
| if (work == NULL) { | if (work == NULL) { |
| goto fr88_err1; | goto fr88_err1; |
| } | } |
| file_cpyname(fname, filename, sizeof(fname)); | file_cpyname(fname, filename, NELEMENTS(fname)); |
| // 第2水準以外を読む必要はある? | // 第2水準以外を読む必要はある? |
| if (loading & (FONT_ANK8 | FONTLOAD_ANK | FONT_KNJ1)) { | if (loading & (FONT_ANK8 | FONTLOAD_ANK | FONT_KNJ1)) { |
| // あったら読み込んでみる | // あったら読み込んでみる |
| file_cutname(fname); | file_cutname(fname); |
| file_catname(fname, pc88knj1name, sizeof(fname)); | file_catname(fname, pc88knj1name, NELEMENTS(fname)); |
| fh = file_open_rb(fname); | fh = file_open_rb(fname); |
| if (fh != FILEH_INVALID) { | if (fh != FILEH_INVALID) { |
| if (file_read(fh, work, 0x20000) == 0x20000) { | if (file_read(fh, work, 0x20000) == 0x20000) { |
| Line 103 BYTE fontpc88_read(const char *filename, | Line 103 BYTE fontpc88_read(const char *filename, |
| // 8dot ANKを読む必要があるか | // 8dot ANKを読む必要があるか |
| if (loading & FONT_ANK8) { | if (loading & FONT_ANK8) { |
| loading &= ~FONT_ANK8; | loading &= ~FONT_ANK8; |
| CopyMemory(fontrom + 0x82000, work + 0x1000, 8*256); | fontdata_ank8store(work + 0x1000, 0, 256); |
| } | } |
| // 16dot ASCIIを読む必要があるか | // 16dot ASCIIを読む必要があるか |
| Line 136 BYTE fontpc88_read(const char *filename, | Line 136 BYTE fontpc88_read(const char *filename, |
| // あったら読み込んでみる | // あったら読み込んでみる |
| file_cutname(fname); | file_cutname(fname); |
| file_catname(fname, pc88knj2name, sizeof(fname)); | file_catname(fname, pc88knj2name, NELEMENTS(fname)); |
| fh = file_open_rb(fname); | fh = file_open_rb(fname); |
| if (fh != FILEH_INVALID) { | if (fh != FILEH_INVALID) { |
| if (file_read(fh, work, 0x20000) == 0x20000) { | if (file_read(fh, work, 0x20000) == 0x20000) { |
| Line 155 BYTE fontpc88_read(const char *filename, | Line 155 BYTE fontpc88_read(const char *filename, |
| // あったら読み込んでみる | // あったら読み込んでみる |
| file_cutname(fname); | file_cutname(fname); |
| file_catname(fname, pc88ankname, sizeof(fname)); | file_catname(fname, pc88ankname, NELEMENTS(fname)); |
| fh = file_open_rb(fname); | fh = file_open_rb(fname); |
| if (fh != FILEH_INVALID) { | if (fh != FILEH_INVALID) { |
| Line 165 BYTE fontpc88_read(const char *filename, | Line 165 BYTE fontpc88_read(const char *filename, |
| // 8dot ANKを読む必要があるか | // 8dot ANKを読む必要があるか |
| if (loading & FONT_ANK8) { | if (loading & FONT_ANK8) { |
| loading &= ~FONT_ANK8; | loading &= ~FONT_ANK8; |
| CopyMemory(fontrom + 0x82000, work + 0x0000, 8*256); | fontdata_ank8store(work + 0x0000, 0, 256); |
| } | } |
| // 16dot ASCIIを読む必要があるか | // 16dot ASCIIを読む必要があるか |