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


Forums > CSDb Entries > Event id #2678 : The 128b font compo
2018-03-18 13:25
lft

Registered: Jul 2007
Posts: 369
Event id #2678 : The 128b font compo

Welcome to the 128b font compo!

The goal is to create the most legible, stylish, and/or awesome font using an executable program no larger than 128 bytes. The assumption is that the ROM font will be used as a basis somehow, although this is not a formal requirement.

The deadline is end of April 8, 2018, in a time zone of your choice.

The compo is held at CSDb, and the result is determined by the weighted average rating (including non-public votes). The ratings will be sampled one week after the deadline, end of April 15, in a time zone of my choice.

Judges are asked to consider screen codes 00-3f only. This comprises the uppercase letters, digits, and punctuation. The rules do not mandate that reverse-video characters work, so it is all right if the cursor doesn't work properly.

I reserve the right to modify the rules if there is a good reason.

Technical requirements

Maximum file size including load address is 128 bytes.

The program must load to the default location ($801), and must be executable with RUN. The new font should be installed at address $3800, after which the program should return to the BASIC prompt, with the VIC bank register ($d018) updated to point to the new font.

The entry should be uploaded in .prg format.

A person may be creatively involved in at most two (2) compo entries. (Idea/test/help credits don't count towards the limit.) It's alright to withdraw an earlier entry in order to submit a new one, up to the deadline.

Template

The following template code is offered as a convenience, and may be used as a starting point. It simply copies the default ROM font.

  
        .word   $801

        *=$801
        
        .word   $80b,1
        .byt    $9e,"2061",0,0,0

        sei
        lda     #$33
        sta     1
        
        ldx     #0
        ldy     #2
loop
src     
        lda     $d000,x

        ; ...
dest    
        sta     $3800,x
        inx
        bne     loop

        inc     src+2
        inc     dest+2
        dey
        bne     loop

        lda     #$37
        sta     1
        
        lda     #$1e
        sta     $d018

        cli
        rts


Happy hacking!
 
... 70 posts hidden. Click here to view all posts....
 
2018-03-19 14:55
TheRyk

Registered: Mar 2009
Posts: 2062
Already the snippets posted in the other fred were cool, making it a compo is a wonderful idea.

A lot of brilliant stuff so far, dudes!
2018-03-19 19:22
Compyx

Registered: Jan 2005
Posts: 631
Is a syntax error allowed after running the program? Seems to save me one byte.
2018-03-19 19:26
Scan

Registered: Dec 2015
Posts: 110
Quote: Is a syntax error allowed after running the program? Seems to save me one byte.

Nothing says it isn't, as long as it exits to BASIC.
2018-03-19 19:36
Compyx

Registered: Jan 2005
Posts: 631
It does return to BASIC, just with a ?SYNTAX ERROR.

Edit: forget about it, screwing with the BASIC interpreter while trying to save one byte is a bit flaky.
2018-03-20 11:47
Shadow
Account closed

Registered: Apr 2002
Posts: 355
I think this compo turned out great, 128 bytes was a good choice of limit as it seems to allow all kinds on neat entries! 64 would have been too restrictive.
2018-03-20 11:59
lft

Registered: Jul 2007
Posts: 369
Yes, I am quite happy with how the limit turned out. I was considering 96 bytes, but in hindsight that would have been too tight.

As it is now, many entrants spend some instructions on fixing individual pixels here and there, and I think this can have a large impact on the overall quality (and coherence) of the font.
2018-03-20 15:17
Carrion

Registered: Feb 2009
Posts: 317
I don't want to comment of each and every entry and all of them are just great.
Let me just say here in general: Great Job guys. I thought the limitations are too big for something interesting being produced in this compo but I was obviously wrong.
What about a 2x2 fonts based on 1x1 C64 charset? Cruzer showed that 2x1 is possible so I wonder what you can do in 2x2 area.
2018-03-20 17:01
Mixer

Registered: Apr 2008
Posts: 422
And #$ef and some other basic logical operations seem to produce nice clear results, and the code size is tiny. Too lazy to submit.
2018-03-20 20:06
Digger

Registered: Mar 2005
Posts: 421
@Carrion: Thinking of pixel smoothing? ;-)
2018-03-22 14:33
Mixer

Registered: Apr 2008
Posts: 422
Sorry for bending the rules, but limitations just have to be conquered. Got more ideas than allowed, but perhaps those ideas are not within the spirit of the compo anymore. F.ex one could make an interactive font using some Basic hooks and zeropage registers, also a font that changes depending on where it is on the screen etc.
Previous - 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 - 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
Sokrates
Jangler/Artline Desi..
Alakran_64
Nordischsound/Hokuto..
megasoftargentina
Paladin/G★P
Twilight/Excess/Arcade
Krill/Plush
iceout/Avatar/HF
dyme
Guests online: 161
Top Demos
1 Next Level  (9.8)
2 Mojo  (9.7)
3 Coma Light 13  (9.7)
4 Edge of Disgrace  (9.6)
5 Comaland 100%  (9.6)
6 No Bounds  (9.6)
7 Uncensored  (9.6)
8 The Ghost  (9.6)
9 Wonderland XIV  (9.6)
10 Bromance  (9.6)
Top onefile Demos
1 It's More Fun to Com..  (9.8)
2 Party Elk 2  (9.7)
3 Cubic Dream  (9.6)
4 Copper Booze  (9.5)
5 Rainbow Connection  (9.5)
6 TRSAC, Gabber & Pebe..  (9.5)
7 Onscreen 5k  (9.5)
8 Wafer Demo  (9.5)
9 Dawnfall V1.1  (9.5)
10 Quadrants  (9.5)
Top Groups
1 Oxyron  (9.3)
2 Nostalgia  (9.3)
3 Booze Design  (9.3)
4 Censor Design  (9.3)
5 Crest  (9.3)
Top Crackers
1 Mr. Z  (9.9)
2 S!R  (9.9)
3 Mr Zero Page  (9.8)
4 Antitrack  (9.8)
5 OTD  (9.8)

Home - Disclaimer
Copyright © No Name 2001-2024
Page generated in: 0.046 sec.