1
0
mirror of https://github.com/KarolS/millfork.git synced 2024-06-01 09:41:36 +00:00

Add support for Japanese C64

This commit is contained in:
Karol Stasiak 2019-07-30 15:30:18 +02:00
parent d3b72f5b42
commit d9f8b5acc4
4 changed files with 41 additions and 2 deletions

View File

@ -33,6 +33,8 @@ see [the Commodore programming guide](./commodore-programming-guide.md) for more
Certain language features work differently on this target.
Read [the LUnix programming guide](./lunix-programming-guide.md) for more info.
* `c64jp` Japanese version of Commodore 64 (different memory layout and character set)
* `c16` Commodore 16
* `plus4` Commodore Plus/4

View File

@ -8,6 +8,8 @@
* [Fizzbuzz 2](crossplatform/fizzbuzz2.mfk) (C64/C16/PET/VIC-20/PET/Atari/Apple II/BBC Micro/ZX Spectrum/PC-88/Armstrad CPC/MSX) an alternative, more extensible implemententation of fizzbuzz
* [Fizzbuzz JP](crossplatform/fizzbuzz_jp.mfk) (PC-88/Japanese C64) Fizzbuzz, but in Japanese
* [Text encodings](crossplatform/text_encodings.mfk) (C64/ZX Spectrum) examples of text encoding features
* [Echo](crossplatform/echo.mfk) (C64/C16/ZX Spectrum/PC-88/MSX) simple text input and output
@ -56,5 +58,3 @@ how to create a program made of multiple files loaded on demand
* [Colors](vcs/colors.mfk) simple static rasterbars
## PC-88 examples
* [Fizzbuzz88](pc88/fizzbuzz88.mfk) Fizzbuzz, but in Japanese

View File

@ -1,6 +1,7 @@
import stdio
void main() {
ensure_mixedcase()
byte i
for i,1,to,100 {
if i %% 15 == 0 {

36
include/c64jp.ini Normal file
View File

@ -0,0 +1,36 @@
; Commodore 64, Japanese version
; assuming a program loaded from disk or tape
; TODO: figure out if the memory map is similar enough
[compilation]
arch=nmos
encoding=petjp
screen_encoding=petscrjp
modules=c64_hardware,loader_1001,c64_kernal,c64_panic,stdlib
[allocation]
; list of free zp pointer locations (these assume that some BASIC routines will keep working)
zp_pointers=$FB,$FD,$43,$45,$47,$4B,$F7,$F9,$9E,$9B,$3D
segments=default
default_code_segment=default
segment_default_start=$100D
segment_default_codeend=$9fff
segment_default_datastart=after_code
segment_default_end=$cfff
[define]
CBM=1
CBM_64=1
MOS_6510=1
WIDESCREEN=1
KEYBOARD=1
JOYSTICKS=2
HAS_BITMAP_MODE=1
[output]
style=single
format=startaddr,allocated
extension=prg
labels=vice