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 #2417 : First CSDb "Unintended OpCode coding challenge"
2015-10-11 07:18
Monte Carlos

Registered: Jun 2004
Posts: 351
Event id #2417 : First CSDb "Unintended OpCode coding challenge"

So here it is. The First CSDb "Unintended OpCode coding challenge" starts over.

First CSDb "Unintended OpCode Coding Challenge"

Please give some feedback about your interest in this compo.
For those who have been part of the discussion
http://csdb.dk/forums/?roomid=12&topicid=112819#112927
please let me know if you are in better agreement with the reworked rules than before.
However, there will not be a rule change anymore.
 
... 44 posts hidden. Click here to view all posts....
 
2015-10-13 08:24
T.M.R
Account closed

Registered: Dec 2001
Posts: 749
Quoting Color Bar
I my releases I had looked for places where I could use UOCs, but only SAX (opcode $CB) helped. Still some look really potentially useful, such as DCM(DCP), RRA (for multiplication?), ASO(SLO) (for line drawing?), etc.


i'm using SAX and DCP right now, with some LAX use where i can just about justify it as an advantage as long as the loop isn't unrolled! =-)

(Please don't expect anything amazing... this is me we're talking about!)
2015-10-13 10:33
Rastah Bar

Registered: Oct 2012
Posts: 336
Quoting T.M.R
... where i can just about justify it as an advantage as long as the loop isn't unrolled! =-)


It saves memory, isn't that enough justification?
2015-10-13 16:45
Hein

Registered: Apr 2004
Posts: 933
Quote: Quoting Color Bar
I my releases I had looked for places where I could use UOCs, but only SAX (opcode $CB) helped. Still some look really potentially useful, such as DCM(DCP), RRA (for multiplication?), ASO(SLO) (for line drawing?), etc.


i'm using SAX and DCP right now, with some LAX use where i can just about justify it as an advantage as long as the loop isn't unrolled! =-)

(Please don't expect anything amazing... this is me we're talking about!)


Unrolling is for lamers anyway.
2015-10-13 19:14
Monte Carlos

Registered: Jun 2004
Posts: 351
TMR:
I'm glad this update looks more convincing to you now. After this rules discussion before i feared i messed it up before it even started.
Now i have a better feeling...
2015-10-14 07:35
T.M.R
Account closed

Registered: Dec 2001
Posts: 749
Quoting Monte Carlos
TMR:
I'm glad this update looks more convincing to you now. After this rules discussion before i feared i messed it up before it even started.
Now i have a better feeling...


i'm just difficult, ask my Beloved... =-)
2015-10-14 09:05
Rastah Bar

Registered: Oct 2012
Posts: 336
Quote: There's great use for many of them, so far just didn't use RRA and RLA as well as LAS and TAS. Even used them in all their adressing modes, some are really handy as they extend the indirect y index modes (LAX, SHA). Most used are LAX, SAX, SBX, DCP, ISC, ASR, ARR.

It looks like opcodes ASO ($0f), RLA ($2f), LSE ($4f), and RRA ($6f) may save you 2 cycles.

Suppose I want to do

ASL $xxxx
LDA $xxxx

That takes 10 cycles, but

LDA #$00
ASO $xxxx

takes only 8. Isn't that so?

(I am referring to http://codebase64.org/doku.php?id=base:extra_instructions_of_th..)
2015-10-14 14:29
Bitbreaker

Registered: Oct 2002
Posts: 500
SRE and SLO and others can take up to 8 cycles (indirect y indexed) and are thus not necessarily faster, also i have not come across any good use for an effect for the RRA and RLA opcodes so far, though they of course would save cycles if used properly.

         lda #$00
         slo $xxxx

can also be expressed as:

         asl label+1
label    lda #$00
2015-10-15 12:01
Rastah Bar

Registered: Oct 2012
Posts: 336
Quoting Bitbreaker


         lda #$00
         slo $xxxx

can also be expressed as:

         asl label+1
label    lda #$00


Not always.
2015-10-17 10:38
Monte Carlos

Registered: Jun 2004
Posts: 351
Thats what i tried recently:
ldx #60
fsprite lda #0
sta sprite+2,x
lda #$f0
sta sprite+1,x
lda #$ff
sta sprite+2,x
sbx #3 ; or axs #3
bpl fsprite
rts
----------------------------------
ldy # 24
ldx #0
setscreen:
lda #'*'
hi = *+2
sta screen,x
txa
sbx #$d8
bcc j
inc hi
j dey
bpl setscreen
rts
-------------------------------------
loop:
jsr waitretrace

lda #7
ldx $d016
sbx #$f9
stx $d016
jmp loop
---------------------------------------
2015-10-18 09:58
Rastah Bar

Registered: Oct 2012
Posts: 336
Is there any concensus on the names given to the various extra instructions?

There are at least three references on codebase64:

http://codebase64.org/doku.php?id=base:extra_instructions_of_th..

http://unusedino.de/ec64/technical/aay/c64/ibmain.htm

http://www.oxyron.de/html/opcodes02.html

Which one is the most complete / commonly used?

A document by Groepaz was mentioned. Where can I find that?



I once used:
sta label+1
txa
label sbx #$00


To get X --> A and X-A --> A
Previous - 1 | 2 | 3 | 4 | 5 | 6 - 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
Earthshaker/Silicon ..
MMS_Z
Mike
Xiny6581/Dees Produc..
Trurl/Extend
Jetboy/Elysium
Conjuror
Guests online: 146
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 Wonderland XIV  (9.6)
9 Memento Mori  (9.6)
10 Bromance  (9.5)
Top onefile Demos
1 It's More Fun to Com..  (9.7)
2 Party Elk 2  (9.7)
3 Cubic Dream  (9.6)
4 Copper Booze  (9.5)
5 TRSAC, Gabber & Pebe..  (9.5)
6 Rainbow Connection  (9.5)
7 Wafer Demo  (9.5)
8 Dawnfall V1.1  (9.5)
9 Quadrants  (9.5)
10 Daah, Those Acid Pil..  (9.5)
Top Groups
1 Nostalgia  (9.3)
2 Oxyron  (9.3)
3 Booze Design  (9.3)
4 Censor Design  (9.3)
5 Crest  (9.3)
Top Logo Graphicians
1 Sander  (9.9)
2 Facet  (9.6)
3 Mermaid  (9.4)
4 Pal  (9.4)
5 Shine  (9.3)

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