mirror of
https://github.com/sheumann/65816-crypto.git
synced 2025-02-21 16:28:57 +00:00
Save a few cycles by not reloading the last written byte between rounds.
This commit is contained in:
parent
75aac0daa9
commit
f04000c83d
26
aes.macros
26
aes.macros
@ -31,7 +31,9 @@
|
|||||||
macro
|
macro
|
||||||
MixColumn &i,&A,&B,&C,&D,&state,&out
|
MixColumn &i,&A,&B,&C,&D,&state,&out
|
||||||
|
|
||||||
|
aif (&i=0).AND.(&round<>1),.skip
|
||||||
ldy &state+&D
|
ldy &state+&D
|
||||||
|
.skip
|
||||||
lda Sbox,Y
|
lda Sbox,Y
|
||||||
pha
|
pha
|
||||||
ldx &state+&A
|
ldx &state+&A
|
||||||
@ -68,40 +70,44 @@
|
|||||||
eor Xtime2Sbox,Y
|
eor Xtime2Sbox,Y
|
||||||
eor rk+&round*16+&i+3
|
eor rk+&round*16+&i+3
|
||||||
sta &out+&i+3
|
sta &out+&i+3
|
||||||
|
aif &i<>12,.skip2
|
||||||
|
tay
|
||||||
|
.skip2
|
||||||
mend
|
mend
|
||||||
|
|
||||||
|
|
||||||
macro
|
macro
|
||||||
FinalRound &round
|
FinalRound &round
|
||||||
|
|
||||||
|
FinalRoundStep 3,15,1
|
||||||
|
FinalRoundStep 15,11
|
||||||
|
FinalRoundStep 11,7
|
||||||
|
FinalRoundStep 7,3
|
||||||
|
|
||||||
FinalRoundStep 0,0
|
FinalRoundStep 0,0
|
||||||
FinalRoundStep 4,4
|
FinalRoundStep 4,4
|
||||||
FinalRoundStep 8,8
|
FinalRoundStep 8,8
|
||||||
FinalRoundStep 12,12
|
FinalRoundStep 12,12
|
||||||
|
|
||||||
FinalRoundStep 13,1
|
FinalRoundStep 13,1
|
||||||
FinalRoundStep 1,5
|
FinalRoundStep 1,5
|
||||||
FinalRoundStep 5,9
|
FinalRoundStep 5,9
|
||||||
FinalRoundStep 9,13
|
FinalRoundStep 9,13
|
||||||
|
|
||||||
FinalRoundStep 10,2
|
FinalRoundStep 10,2
|
||||||
FinalRoundStep 2,10
|
FinalRoundStep 2,10
|
||||||
FinalRoundStep 14,6
|
FinalRoundStep 14,6
|
||||||
FinalRoundStep 6,14
|
FinalRoundStep 6,14
|
||||||
|
|
||||||
FinalRoundStep 3,15
|
|
||||||
FinalRoundStep 15,11
|
|
||||||
FinalRoundStep 11,7
|
|
||||||
FinalRoundStep 7,3
|
|
||||||
|
|
||||||
mend
|
mend
|
||||||
|
|
||||||
|
|
||||||
macro
|
macro
|
||||||
FinalRoundStep &to,&from
|
FinalRoundStep &to,&from,&skipldy
|
||||||
|
|
||||||
|
aif C:&skipldy,.skip
|
||||||
ldy state2+&from
|
ldy state2+&from
|
||||||
|
.skip
|
||||||
lda Sbox,Y
|
lda Sbox,Y
|
||||||
eor rk+&round*16+&to
|
eor rk+&round*16+&to
|
||||||
sta state1+&to
|
sta state1+&to
|
||||||
|
Loading…
x
Reference in New Issue
Block a user