As far as I know, you cannot export .prg files from CharPad, therefore I've written a small program in S-MON $C000 that you can use it, until someone writes a more usable one. :) You can find the complete source code as well, see here, below.
I know, not easy to use but at least can work after some trial and error.
File: charpad viewer.prg
Note: This file is unpacked, it has a BASIC SYS line and can be performed
by typing RUN and pressing ENTER.
A monitor program might be necessary to load the files to the desired place
into the memory and set $D021-$D023 init values.
Written by ZSCS/Quantum/Lethargy/Apace. FREEWARE, you can modify or use it freely. ;)
How to use it
-------------
1. Export files from CharPad C64 Pro v3.69
Load your .ctm file which consists all data of the Project.
1.a. Export Char Set to a file
select from menu: File -> Import/Export -> Binary -> Export Character Set...
1.b. Export Character Map
select from menu: File -> Import/Export -> Binary -> Export Map (8-bit)...
1.c. Export $D800 Attributes
select from menu: File -> Import/Export -> Binary -> Export Colour Map
(per map char cell, CmLo)...
1.d. please make note the $d021, $d022 and $d023 vales, this will be necessary later.
2.a. Load charpad viewer.prg
2.b. e.g. using a monitor program, load the files as the following:
- load Char Set from memory address $2000
- load Character map from memory address $2800
- load $D800 attribs from memory address $2c00
- Set $D021-23 values
$0878 (decimal 2168): background color
POKE 2168,0
$0882 (decimal 2178): VIC Bg1 (D022, MC1)
POKE 2178,6:REM blue
$0887 (decimal 2183): VIC Bg2 (D023, MC2)
POKE 2183,14:REM light blue
In code:
,0877 a9 00 lda #00
,0879 8d 20 d0 sta d020
,087c a9 00 lda #00
,087e 8d 21 d0 sta d021
,0881 a9 06 lda #06
,0883 8d 22 d0 sta d022
,0886 a9 0e lda #0e
,0888 8d 23 d0 sta d023
3. Save your file from $0801 to $3000
4. test it by simply typing RUN and pressing key ENTER
----
CODE:
----
,0830 78 sei
,0831 a9 7f lda #7f
,0833 8d 0d dc sta dc0d
,0836 8d 0d dd sta dd0d
,0839 a9 00 lda #00
,083b 8d 1a d0 sta d01a
,083e ad 0d dc lda dc0d
,0841 ad 0d dd lda dd0d
,0844 20 70 08 jsr 0870
,0847 a9 0f lda #0f
,0849 8d 19 d0 sta d019
,084c a9 35 lda #35
,084e 85 01 sta 01
,0850 a9 00 lda #00
,0852 8d fe ff sta fffe
,0855 a9 09 lda #09
,0857 8d ff ff sta ffff
,085a a9 1b lda #1b
,085c 8d 11 d0 sta d011
,085f a9 32 lda #32
,0861 8d 12 d0 sta d012
,0864 a9 01 lda #01
,0866 8d 1a d0 sta d01a
,0869 8d 19 d0 sta d019
,086c 58 cli
,086d 4c 6d 08 jmp 086d
-----------------------------------
,0870 a9 00 lda #00
,0872 aa tax
,0873 a8 tay
,0874 2c 00 10 bit 1000
,0877 a9 00 lda #00
,0879 8d 20 d0 sta d020
,087c a9 00 lda #00
,087e 8d 21 d0 sta d021
,0881 a9 06 lda #06
,0883 8d 22 d0 sta d022
,0886 a9 0e lda #0e
,0888 8d 23 d0 sta d023
,088b a2 00 ldx #00
,088d bd 00 28 lda 2800,x
,0890 9d 00 04 sta 0400,x
,0893 bd 00 29 lda 2900,x
,0896 9d 00 05 sta 0500,x
,0899 bd 00 2a lda 2a00,x
,089c 9d 00 06 sta 0600,x
,089f bd f8 2a lda 2af8,x
,08a2 9d f8 06 sta 06f8,x
,08a5 bd 00 2c lda 2c00,x
,08a8 9d 00 d8 sta d800,x
,08ab bd 00 2d lda 2d00,x
,08ae 9d 00 d9 sta d900,x
,08b1 bd 00 2e lda 2e00,x
,08b4 9d 00 da sta da00,x
,08b7 bd f8 2e lda 2ef8,x
,08ba 9d f8 da sta daf8,x
,08bd e8 inx
,08be d0 cd bne 088d
,08c0 60 rts
-----------------------------------
.d0900
,0900 ee 19 d0 inc d019
,0903 a9 1b lda #1b
,0905 8d 11 d0 sta d011
,0908 a9 18 lda #18
,090a 8d 16 d0 sta d016
,090d a9 18 lda #18
,090f 8d 18 d0 sta d018
,0912 a9 34 lda #34
,0914 cd 12 d0 cmp d012
,0917 d0 fb bne 0914
,0919 a9 20 lda #20
,091b 8d fe ff sta fffe
,091e a9 f9 lda #f9
,0920 8d 12 d0 sta d012
,0923 a9 2a lda #2a
,0925 8d fe ff sta fffe
,0928 40 rti
,0929 00 brk
,092a ee 19 d0 inc d019
,092d 2c 03 10 bit 1003
,0930 a9 32 lda #32
,0932 8d 12 d0 sta d012
,0935 a9 00 lda #00
,0937 8d fe ff sta fffe
,093a 40 rti
,093b 00 brk
---------------------------------
.
BASIC line:
-----------
10 sys2096:rem charpad hires mc viewer by zscs
|