| |
Monte Carlos
Registered: Jun 2004 Posts: 364 |
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.... |
| |
T.M.R Account closed
Registered: Dec 2001 Posts: 749 |
Quoting Color BarI 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!) |
| |
Rastah Bar Account closed
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? |
| |
Hein
Registered: Apr 2004 Posts: 954 |
Quote: Quoting Color BarI 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. |
| |
Monte Carlos
Registered: Jun 2004 Posts: 364 |
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... |
| |
T.M.R Account closed
Registered: Dec 2001 Posts: 749 |
Quoting Monte CarlosTMR:
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... =-) |
| |
Rastah Bar Account closed
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..) |
| |
Bitbreaker
Registered: Oct 2002 Posts: 508 |
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
|
| |
Rastah Bar Account closed
Registered: Oct 2012 Posts: 336 |
Quoting Bitbreaker
lda #$00
slo $xxxx
can also be expressed as:
asl label+1
label lda #$00
Not always. |
| |
Monte Carlos
Registered: Jun 2004 Posts: 364 |
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
--------------------------------------- |
| |
Rastah Bar Account closed
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 |