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: 4255
cruzer already won that compo if both size and niceness is considered, imho :)
2018-03-16 18:26
Oswald

Registered: Apr 2002
Posts: 4255
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: 959
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: 344
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: 959
Just set a sensible code size like 128b and let the voters decide.
2018-03-18 10:49
4mat

Registered: May 2010
Posts: 44
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: 954
"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: 959
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
Bieno/Commodore Plus
Jucke
Almighty God/L64/Ons..
Heavy Stylus/RGCD
ghost/excess
Black Beard/Abyss, A..
encore
Guests online: 42
Top Demos
1 Uncensored  (9.7)
2 Edge of Disgrace  (9.7)
3 Coma Light 13  (9.6)
4 Comaland 100%  (9.6)
5 The Shores of Reflec..  (9.6)
6 Wonderland XII  (9.6)
7 Lunatico  (9.6)
8 We Come in Peace  (9.5)
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.5)
3 Pandemoniac Part 2 o..  (9.5)
4 Treu Love [reu]  (9.5)
5 Merry Xmas 2017  (9.4)
6 Arok 20 Invitation  (9.4)
7 Dawnfall V1.1  (9.4)
8 In Memoriam BHF  (9.4)
9 Dawnfall  (9.4)
10 Synthesis  (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 Webmasters
1 Slaygon  (9.6)
2 Perff  (9.5)
3 Morpheus  (9.5)
4 Sabbi  (9.4)
5 CreaMD  (9.3)

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