Search found 4662 matches

by Mike
Wed Mar 27, 2024 2:19 am
Forum: Emulation and Cross Development
Topic: Assembler
Replies: 38
Views: 1928

Re: Assembler

In this thread here, another recent thread about " Recommendations for VIC-20 assembly tutorial[s], tools " already had been mentioned. In that other thread you will find the link to my VICMON primer . That one specifically aims to make the bridge between a high level language (here, BASIC...
by Mike
Mon Mar 25, 2024 2:00 pm
Forum: Programming
Topic: Line drawing algorithm
Replies: 20
Views: 1170

Re: Line drawing algorithm

Do the tables get generated each time the routine is called or only once on initialisation? I suppose you mean the tables that are written in lines 20..27 of the test rig: these of course need only be written once, at program start. The main loop of the test rig just sets random co-ordinates for th...
by Mike
Sun Mar 24, 2024 4:06 pm
Forum: Programming
Topic: Unixoid VIC
Replies: 19
Views: 1239

Re: Unixoid VIC

pixel wrote:Now for chasing zombies… how did printing decimals work again?
See the thread "Printing (unsigned) 16-bit numbers in Assembly, how?". :wink:
by Mike
Sun Mar 24, 2024 1:37 pm
Forum: Programming
Topic: Line drawing algorithm
Replies: 20
Views: 1170

Re: Line drawing algorithm

I'm curious: what if you had y2>y1, so lines were always drawn in one direction vertically as well? You can't have both. Given x2>x1 and y2>y1, a line on screen looks like a backslash, "\", assuming a left-handed co-ordinate system. You can't enforce y2>y1 though when the endpoints alread...
by Mike
Sun Mar 24, 2024 7:53 am
Forum: Programming
Topic: Line drawing algorithm
Replies: 20
Views: 1170

Re: Line drawing algorithm

Warning, longer post. Before I posted my own version of the "20000 pixels/second" line routine on the previous page, I also had a PM exchange with Merytsetesh about MrSterlingBS's original implementation: I'll take a look into this the next days whether I can derive a version of the routi...
by Mike
Sat Mar 23, 2024 3:20 am
Forum: Programming
Topic: Unixoid VIC
Replies: 19
Views: 1239

Re: Unixoid VIC

That is actually the job of CLRCHN . CLALL in addition only rudely purges the table of open files (by setting the number of open files to 0) and there is only one single instance in ROM where a JSR $FFE7 is used - by the BASIC interpreter to ensure there are no (pre-)allocated logical file numbers a...
by Mike
Sat Mar 23, 2024 2:15 am
Forum: Programming
Topic: CBM Key Character Arrangement
Replies: 1
Views: 133

Re: CBM Key Character Arrangement

You need to differentiate clearly between PETSCII codes (i.e. what is used with CHROUT and CHRIN), screen codes (what is stored in the text screen RAM) and glyphs (the actual definition of a character matrix in the character ROM or as user defined character in RAM). What algorithm is used to pull ou...
by Mike
Mon Mar 18, 2024 3:56 am
Forum: General Topics
Topic: modded VIC 20 kernals?
Replies: 14
Views: 696

Re: modded VIC 20 kernals?

[...] asking for the screen size returns hard coded values. It would have been nice if that was dynamic, but sadly too late. The KERNAL call JSR $FFED (SCREEN) is beyond uselessness. It assumes a level of abstraction (regarding the screen size) that at that time neither was expected nor required fr...
by Mike
Sat Mar 16, 2024 2:51 pm
Forum: Programming
Topic: Line drawing algorithm
Replies: 20
Views: 1170

Re: Line drawing algorithm

MrSterlingBS wrote:[...]
PM sent
by Mike
Sat Mar 16, 2024 4:59 am
Forum: Programming
Topic: Line drawing algorithm
Replies: 20
Views: 1170

Re: Line drawing algorithm

Here's my take on this subject: Before any questions come up in this regard: MINIGRAFIK already contains a line routine, which is not as fast as the routine below, however it is much more compact (just about 100 bytes extra beyond the pixel set function otherwise already provided within the MG code)...
by Mike
Sat Mar 16, 2024 3:47 am
Forum: General Topics
Topic: modded VIC 20 kernals?
Replies: 14
Views: 696

Re: modded VIC 20 kernals?

The KERNAL is accessed through a jump table in RAM. You can change those jump points and switch out any KERNAL subroutine you want without having to replace ROMs. That is the same case with the C64, but it did not give people a reason not to produce modified KERNAL ROMs. Edit/Addition : That being ...
by Mike
Thu Mar 14, 2024 1:16 pm
Forum: Programming
Topic: A sample programming session in VICMON
Replies: 32
Views: 16435

Re: A sample programming session in VICMON

[...] why use [SBC]? If you do the sign inversion in the same context as done in BALLPING (i.e. a given zero page address as source and target), for both methods you'll arrive at (DX := $F9): ; ** using SBC: SEC LDA #$00 SBC $F9 STA $F9 7 bytes, 10 cycles ; ** using EOR #$FF and 2s-complement: CLC ...
by Mike
Thu Mar 14, 2024 3:22 am
Forum: Programming
Topic: A sample programming session in VICMON
Replies: 32
Views: 16435

Re: A sample programming session in VICMON

Merytsetesh wrote:To get DX = -DX, why not XOR with 128 instead of using SBC?
That would only be correct with sign-magnitude representation.
by Mike
Wed Mar 13, 2024 11:07 am
Forum: Programming
Topic: MINIGRAFIK lineart
Replies: 47
Views: 16889

Re: MINIGRAFIK lineart

allenhuffman wrote:I am trying to find why I was quoted here? I don’t see a post?
That's Denial's way of notifying someone about a post that might be of his or her interest. :mrgreen:
by Mike
Sun Mar 10, 2024 5:16 am
Forum: Programming
Topic: MINIGRAFIK lineart
Replies: 47
Views: 16889

Re: MINIGRAFIK lineart

Here's another port of Super Expander lineart to MINIGRAFIK ( download ); this time, 's Kangaroo duo Lionel and Joey: https://dateipfa.de/.Public/denial/images/minigrafik/kangaroo.png As with Garfield earlier in this thread, the drawing is primarily made from circle/ellipse arcs and lines. The MG im...