New release: 3 New Fonts for Your Vic

Basic and Machine Language

Moderator: Moderators

User avatar
orion70
VICtalian
Posts: 4341
Joined: Thu Feb 02, 2006 4:45 am
Location: Piacenza, Italy
Occupation: Biologist

Post by orion70 »

Thanks Jeff - and
orion70 wrote:...could you please:
1- Make a 16K+ version of the character generator
:?: :P
User avatar
Jeff-20
Denial Founder
Posts: 5759
Joined: Wed Dec 31, 1969 6:00 pm

Post by Jeff-20 »

I just realized, I don't know how to work with RAM expansions. How the heck do I make user graphics when the memory shifts?

Everything I've done before now was with no expansion. I could see myself someday expanding by 3k, but 8k or more would require me to put the user graphics at the beginning and point the program elsewhere, etc. Sounds too complicated.
High Scores, Links, and Jeff's Basic Games page.
User avatar
Mike
Herr VC
Posts: 4841
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Post by Mike »

Hi, Jeff!
Jeff-20 wrote:How the heck do I make user graphics when the memory shifts?
I think you'd like to edit your program/game on the VIC, and still want to be able to save the whole lot (including charset) in one piece onto disk. This can be done quite easily, as follows (with at least 8K RAM expansion inserted): First, type in this BASIC stub:

Code: Select all

1 POKE44,28:RUN
Second, you'd put the BASIC start at 7169:

Code: Select all

POKE44,28:POKE7168,0:NEW
Finally, you'd place a complete copy of the uppercase character set at 5120:

Code: Select all

FORT=0TO2047:POKE5120+T,PEEK(32768+T):NEXT
Now, you can start to write your own program. The charset at 5120 is activated with POKE 36869,205. The text screen is located at 4096, and colour RAM at 37888. If you want to save everything, write:

Code: Select all

POKE44,18:SAVE"NAME",8
Then upon LIST, or reload, you'll see the line

Code: Select all

1 POKE44,28:RUN
again, which starts your own program as you type RUN - and then you can edit it again.

One small caveat: if you load such a program when the BASIC start is already put at 7169, line 1 enters an infinite loop, as the BASIC start isn't altered, and line 1 just re-runs itself.

Michael

P.S.: So no reason for you anymore not to use 8K, or bigger extensions. ;)
Last edited by Mike on Tue Mar 15, 2016 3:25 am, edited 1 time in total.
User avatar
orion70
VICtalian
Posts: 4341
Joined: Thu Feb 02, 2006 4:45 am
Location: Piacenza, Italy
Occupation: Biologist

Post by orion70 »

:D I knew there was my saviour somewhere out there... Now I can try making versions of the BASIC text adventures with Jeff's fonts... at least if I understood correctly how to do it...
User avatar
Mike
Herr VC
Posts: 4841
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Post by Mike »

:oops:

In that case, some extra work is necessary, as Jeff's character sets are stored at 6144.

Within VICE, and with +8K (or more) active, proceed as follows:

Code: Select all

LOAD"FONT1.PRG",8,1
This loads the program to the same address it would be loaded to on an unexpanded VIC-20. Especially, the BASIC part now ends up in the text screen. Press Alt-R to reset the VIC, keeping memory intact (this also works on the real VIC-20 me guesses). Now copy down the character set from 6144 to 5120:

Code: Select all

FORT=0TO2047:POKE5120+T,PEEK(6144+T):NEXT
Then, enter the BASIC stub from above, and move up the BASIC start:

Code: Select all

1 POKE44,28:RUN

POKE44,28:POKE7168,0:NEW
Finally, a small program that activates the character set and deletes itself, and the whole which should be saved to disk before running:

Code: Select all

1 POKE36869,205:NEW

POKE44,18:SAVE"FONT1A.PRG",8

RUN
If any questions remain ... ;)

Greetings,

Michael
Last edited by Mike on Tue Mar 15, 2016 3:26 am, edited 1 time in total.
User avatar
Jeff-20
Denial Founder
Posts: 5759
Joined: Wed Dec 31, 1969 6:00 pm

Post by Jeff-20 »

It's really hard to improve upon the VIC's standard font. I don't think I could improve legibility. I should have spent more time on these three. I was just curious about how it could be done. It makes for a neat toy.

I think I have some emotional block preventing me from using memory expansion. I can never seem to get around to starting a project that requires more memory! :lol:
High Scores, Links, and Jeff's Basic Games page.
User avatar
orion70
VICtalian
Posts: 4341
Joined: Thu Feb 02, 2006 4:45 am
Location: Piacenza, Italy
Occupation: Biologist

Post by orion70 »

Mike wrote:If any questions remain ... ;)
Thanks Mike, will try it ASAP and submit problems here.
Jeff-20 wrote:It's really hard to improve upon the VIC's standard font. I don't think I could improve legibility. I should have spent more time on these three. I was just curious about how it could be done. It makes for a neat toy.
They're nice, and at least one (the 2nd IIRC) has a good readability. I encourage you to produce some more sets :wink: .
User avatar
Mike
Herr VC
Posts: 4841
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Post by Mike »

Seems I should finish the "plug-in" which allows to edit a complete set of 256 characters within MINIPAINT. :mrgreen:

More to come next weekend. ;)
User avatar
GreyGhost
Vic 20 Nerd
Posts: 525
Joined: Wed Oct 05, 2005 11:10 pm

Post by GreyGhost »

Regular and multicolor at the same time would really be nice. :D
Rob
Kananga
Vic 20 Afficionado
Posts: 317
Joined: Mon Mar 08, 2010 2:11 pm

Post by Kananga »

GreyGhost wrote:Regular and multicolor at the same time would really be nice. :D
Yes, please! :)
Buy the new Bug-Wizard, the first 100 bugs are free!
User avatar
orion70
VICtalian
Posts: 4341
Joined: Thu Feb 02, 2006 4:45 am
Location: Piacenza, Italy
Occupation: Biologist

Post by orion70 »

In the meantime - Jeff, your font#2 is not bad at all for sci-fi games such as the strategy classic Star Trek...

Image

:wink:
User avatar
orion70
VICtalian
Posts: 4341
Joined: Thu Feb 02, 2006 4:45 am
Location: Piacenza, Italy
Occupation: Biologist

Post by orion70 »

Mike wrote:In that case, some extra work is necessary, as Jeff's character sets are stored at 6144.

Within VICE, and with +8K (or more) active, proceed as follows:

Code: Select all

LOAD"FONT1.PRG",8,1
I'm trying to "single-file" BASIC adventures with Jeff's fonts, but I'm already stuck at this point :oops: . When LOADing"FONTn",8,1 with 8K+ expansion, I get the error screen:

Image

:cry:
User avatar
Mike
Herr VC
Posts: 4841
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Post by Mike »

Just follow the rest of the instructions ...
Mike wrote:This loads the program to the same address it would be loaded to on an unexpanded VIC-20. Especially, the BASIC part now ends up in the text screen. Press Alt-R to reset the VIC, keeping memory intact [...]
User avatar
orion70
VICtalian
Posts: 4341
Joined: Thu Feb 02, 2006 4:45 am
Location: Piacenza, Italy
Occupation: Biologist

Post by orion70 »

I'm working too much lately :D .
User avatar
Mike
Herr VC
Posts: 4841
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Post by Mike »

What a quick response! :lol:

You remember we had agreed upon something for this year. ;) Do you have a certain appropriate date in mind within the next two months? -> PM

Cheers,

Michael
Post Reply