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 > C64 Coding > useless opcodes riddle - wtf is up with LAS and TAS?
2014-11-07 23:10
chatGPZ

Registered: Dec 2001
Posts: 11145
useless opcodes riddle - wtf is up with LAS and TAS?

Due to my emulator related activities in the last year(s) i digged more into the so called "illegal" opcodes, and the result is a nice (hopefully) PDF that i'll publish soonish (when some of you lazy bastards are done proofreading =D) - which includes complete state of the art reference to all of these, plus a bunch of real world examples on how to use these (sometimes very weird behaving) instructions... (in large part provided by bitbreaker, thumbs up!) Its about time for a comprehensive document on this topic that is suitable for normal people =)

however, two opcodes seem to be completely useless and so far i cant think of what to use them for in real world code:
- LAS abs,y ($BB) (A,X,SP = addr & SP)
- TAS abs,y ($9B) (SP = A & X ; addr = SP & addrhi+1)

if any of you have used these before, or for whatever reason have an idea on what to do with them - let me know please, this is your chance to earn some karma upgrade points :o)

(and as a sidenote, some not so obvious *short* snippets that are using SLO, RLA, RRA or ISC are welcome too)

let's bust some more myths!
 
... 26 posts hidden. Click here to view all posts....
 
2014-11-08 22:13
doynax
Account closed

Registered: Oct 2004
Posts: 212
Quoting lft
Although it makes some assumptions about which vic bank is active, right?
Yes, only banks 0 and 3 work and IRQ-safe switching eats 10 cycles over $dd02 fiddling.

Plus the 14-cycle response is pushing it, famously failing on the 1571DCR in 1 MHz mode.
2014-11-08 23:01
chatGPZ

Registered: Dec 2001
Posts: 11145
forgot: yes, only "real world" examples are useful, i HAVE used these opcodes in test programs (look in VICE repository)
2014-11-09 17:46
chatGPZ

Registered: Dec 2001
Posts: 11145
who would have though =)
2014-11-09 20:44
Cruzer

Registered: Dec 2001
Posts: 1048
The only thing I have used TAS for is for being impressed by how much stuff the CPU can do in 5 cycles. Too bad it's useless stuff.
2014-11-09 23:35
Martin Piper

Registered: Nov 2007
Posts: 645
Maybe it's time for an optimising assembler that suggests replacement code by scanning for known instruction sequences.
2014-11-10 08:17
doynax
Account closed

Registered: Oct 2004
Posts: 212
Quoting Martin Piper
Maybe it's time for an optimising assembler that suggests replacement code by scanning for known instruction sequences.
I'm not convinced such a feature would be terribly useful unless the assembler had a fuller view of the semantics of the program, to separate side-effects from desired results.

Perhaps an emulator could be modified to report feedback on dead-stores/flags and the like. Plus with demo code coverage is largely a non-issue.

A super-optimizer would also be pretty neat, though the amount of complex immediates and tables in optimized 6502 code may put a damper on things.
2014-11-10 09:53
lft

Registered: Jul 2007
Posts: 369
Quoting Martin Piper
Maybe it's time for an optimising assembler that suggests replacement code by scanning for known instruction sequences.


Depends on the code. Often, the amount of cycles matters, and occasionally the amount of bytes.

But an optimising compiler for a high-level language should make use of illegal opcodes when it makes sense.
2014-11-10 10:17
chatGPZ

Registered: Dec 2001
Posts: 11145
i have played with both, super optimizer and pattern based optimizer some years ago... it didnt make a lot of sense for hand written asm code (ie, it almost never found something to optimize). for code generated by cc65 on the other hand it was somewhat useful =)
2014-11-10 13:44
Peacemaker

Registered: Sep 2004
Posts: 243
i call for an bruteforce ill. opcode tool that creates billions of combinations of routines and its results ;)
Previous - 1 | 2 | 3 | 4 - 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
Dymo/G★P
Mibri/ATL^MSL^PRX
Higgie/Kraze/Slacker..
Alakran_64
Jucke
csabanw
Holy Moses/Role
YPS
Mason/Unicess
Devia/Ancients
acrouzet/G★P
psych
Guests online: 121
Top Demos
1 Next Level  (9.8)
2 13:37  (9.7)
3 Mojo  (9.7)
4 Coma Light 13  (9.7)
5 Edge of Disgrace  (9.6)
6 Comaland 100%  (9.6)
7 Uncensored  (9.6)
8 No Bounds  (9.6)
9 Wonderland XIV  (9.6)
10 Bromance  (9.5)
Top onefile Demos
1 Layers  (9.6)
2 Party Elk 2  (9.6)
3 It's More Fun to Com..  (9.6)
4 Cubic Dream  (9.6)
5 Copper Booze  (9.6)
6 TRSAC, Gabber & Pebe..  (9.5)
7 Rainbow Connection  (9.5)
8 Dawnfall V1.1  (9.5)
9 Quadrants  (9.5)
10 Daah, Those Acid Pil..  (9.5)
Top Groups
1 Oxyron  (9.3)
2 Booze Design  (9.3)
3 Censor Design  (9.3)
4 Crest  (9.3)
5 Performers  (9.3)
Top Swappers
1 Derbyshire Ram  (10)
2 Jerry  (9.8)
3 Violator  (9.8)
4 Acidchild  (9.7)
5 Starlight  (9.6)

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