Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
You are not logged in 
CSDb User Forums


Forums > C64 Coding > Generate better looking chars from ROM
2018-03-15 23:03
jamiefuller

Registered: Mar 2018
Posts: 19
Generate better looking chars from ROM

Hi All,

I'm trying to create a font using the smallest amount of ram possible, It doesn't have to be the best font in the world but just something that looks at least a little different from the standard font.

This is the best I have come up with so far (71 bytes), it copies the font from ROM and "translates" parts of the font to make it look slightly different.



*=$0900
main
        inc $DC0E
        lda $01
        and #$fb
        sta $01

        ldy #$01
@lp1    ldx #$00
@lp2    lda $d000,x
        cmp #$76
        bne *+4
        lda #$7A
        cmp #$60
        bne *+4
        lda #$70
        cmp #$66
        bne *+4
        lda #$72
        cmp #$6C
        bne *+4
        lda #$74
        cmp #$6e
        bne *+4
        lda #$76
@lp3    sta $3000,x
        inx
        bne @lp2
        inc @lp2+2
        inc @lp3+2
        dey
        bpl @lp1

        lda $01
        ora #$04
        sta $01
        dec $DC0E

        rts


Any suggestions for improving/reducing size?
 
... 10 posts hidden. Click here to view all posts....
 
2018-03-16 18:23
Oswald

Registered: Apr 2002
Posts: 4283
cruzer already won that compo if both size and niceness is considered, imho :)
2018-03-16 18:26
Oswald

Registered: Apr 2002
Posts: 4283
Quote: Funny, I was just thinking about this! I want to morph the ROM into a half-sized charset. I wonder if I could just pick 3 columns from it...

you could do it just as my code does, but with more cmp's

cmp #$40 checks if bit #$40 is set if yes C is set then set according column bit in the result etc etc. just take a column from both sides and one from middle.
2018-03-16 19:06
Shadow

Registered: Apr 2002
Posts: 318
Quote: Of the three examples in post #5, the top one is my favourite. Compare the M's in "COMMODORE" for instance.

Anyway, this should totally be a compo.


The problem with a compo is that you have two dimensions - size and how good the font looks.
Perhaps having a fixed size limit like 64 or 128 bytes code, and then see who can come up with the nicest looking font could work?
2018-03-16 20:33
Glasnost

Registered: Aug 2011
Posts: 26
@jamiefuller:

Your code can be better in 2 ways:

1.(-4 bytes) No need for

lda $01
and #$fb
sta $01

unless it runs while the datasette is loading :)

just..
lda #$33 (#$37 later)
sta $01


2. (-1 byte) by using the "illegal" opcodes dcp or isc in the loop to cancel use of y. dcp and isc are usefull for looping in some cases.

Illegal opcode ref:
http://www.oxyron.de/html/opcodes02.html
2018-03-17 21:57
Cruzer

Registered: Dec 2001
Posts: 960
Quoting lft
Anyway, this should totally be a compo.
Agree. We have way too few coding compos. I would definitely do some experiments, and compete if anything good came out of that.
2018-03-17 23:23
Compyx

Registered: Jan 2005
Posts: 384
Setting rules will be difficult, the code-size restriction is simple: less code: more 'points'.

But what constitutes a 'better looking charset', how does one weigh that against the code size?
2018-03-18 01:15
Cruzer

Registered: Dec 2001
Posts: 960
Just set a sensible code size like 128b and let the voters decide.
2018-03-18 10:49
4mat

Registered: May 2010
Posts: 45
I remember a while ago making the classic 'data 70' font out of the rom font in code. Can't remember if that was for a competition or something else. Anyway if you're looking for a target style that might be useful.
2018-03-18 10:53
Krill

Registered: Apr 2002
Posts: 1009
"Data Seventy is a high-tech style font, with the look of old computer lettering. Data Seventy gives any text a futuristic appearance."

Not so sure if the prefix "retro" should be there in front of "futuristic". :)
2018-03-18 12:24
Cruzer

Registered: Dec 2001
Posts: 960
Retrofuturism is a thing.
Previous - 1 | 2 - Next
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
tokra/Akronyme Analo..
Dipswitch/Up Rough
G-Force
pcollins/Excess
lw0000/Hokuto Force
Trasher/Fairlight
Broti/DT/KRN
Electric/Extend
Guests online: 25
Top Demos
1 Uncensored  (9.7)
2 Comaland 100%  (9.7)
3 Edge of Disgrace  (9.7)
4 Coma Light 13  (9.7)
5 The Shores of Reflec..  (9.6)
6 Wonderland XII  (9.6)
7 Lunatico  (9.6)
8 We Come in Peace  (9.6)
9 Incoherent Nightmare  (9.5)
10 Wonderland XIII  (9.5)
Top onefile Demos
1 FMX Music Demo  (9.6)
2 Daah, Those Acid Pil..  (9.6)
3 Arok 20 Invitation  (9.5)
4 Pandemoniac Part 2 o..  (9.5)
5 Party Horse  (9.5)
6 Treu Love [reu]  (9.5)
7 Merry Xmas 2017  (9.4)
8 Dawnfall V1.1  (9.4)
9 In Memoriam BHF  (9.4)
10 Dawnfall  (9.4)
Top Groups
1 Oxyron  (9.4)
2 Booze Design  (9.4)
3 Censor Design  (9.4)
4 Finnish Gold  (9.4)
5 Crest  (9.3)
Top Mega Swappers
1 Aslive  (9.3)
2 R.C.S.  (9.3)
3 Dishy  (9.2)
4 Nightshade  (9.1)
5 Calypso  (9.0)

Home - Disclaimer
Copyright © No Name 2001-2018
Page generated in: 0.054 sec.