6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Sun Nov 24, 2024 3:23 am

All times are UTC




Post new topic Reply to topic  [ 52 posts ]  Go to page Previous  1, 2, 3, 4
Author Message
 Post subject: Re: ACIA sense check
PostPosted: Sat May 07, 2016 4:19 am 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8514
Location: Midwestern USA
banedon wrote:
OK. I've rewritten the variable detection and processing routine in my assembler and now things seem a little better:

Attachment:
foundtheissue_resolved.gif


I'm off to bed so will re-assemble and test my sprint code tomorrow.

Just a curmudgeonly opinion, but an assembler that conforms to the MOS Technology assembly language syntax might be less a hassle. Standards do exist for a reason, y'know, and the MOS Technology syntax has proven itself over the years to be straightforward and unambiguous.

I don't know what it is that prompts the development of assemblers and compilers that deviate from published standards. What I do know is that such deviation often causes unnecessary portability problems. Case in point: C. As long as C compilers followed the K&R standard everything was fine. Then all sorts of strange compilers started coming out of the woodwork during the early MS-DOS days, and code portability became dodgy. That was what prompted the development of an ANSI C standard.

_________________
x86?  We ain't got no x86.  We don't NEED no stinking x86!


Top
 Profile  
Reply with quote  
 Post subject: Re: ACIA sense check
PostPosted: Sat May 07, 2016 8:29 am 
Offline
User avatar

Joined: Sun Sep 08, 2013 10:24 am
Posts: 740
Location: A missile silo somewhere under southern England
BigDumbDinosaur wrote:
banedon wrote:
OK. I've rewritten the variable detection and processing routine in my assembler and now things seem a little better:

Attachment:
The attachment foundtheissue_resolved.gif is no longer available


I'm off to bed so will re-assemble and test my sprint code tomorrow.

Just a curmudgeonly opinion, but an assembler that conforms to the MOS Technology assembly language syntax might be less a hassle. Standards do exist for a reason, y'know, and the MOS Technology syntax has proven itself over the years to be straightforward and unambiguous.

I don't know what it is that prompts the development of assemblers and compilers that deviate from published standards. What I do know is that such deviation often causes unnecessary portability problems. Case in point: C. As long as C compilers followed the K&R standard everything was fine. Then all sorts of strange compilers started coming out of the woodwork during the early MS-DOS days, and code portability became dodgy. That was what prompted the development of an ANSI C standard.

I completely see your point and agree for the most part. However, when I first started writing 65C02CA I didn't know of any real standards and now I'm "almost there" with regard to completion I really don't feel like redoing it.
Also, I was trying to emulate the assembler found in the BBC Micro B+ as that is the machine that I had in my formative years and enjoyed using. I've sort of wondered away from that to allow things like $ as well as & for hex character designations and allowing % to designate a binary number (never part of BBC Basic Assembler) and other tweaks. Another factor is that I made 6502CA for myself, although I would be very happy indeed if anyone else find a use for it.

BTW (here comes the icing on the cake) - I found another bug.
See if you can spot it :mrgreen: :

Attachment:
ItLiedToMe.gif
ItLiedToMe.gif [ 149.61 KiB | Viewed 637 times ]


I've left a small pointer/clue in there and it explains exactly why LDY (zp),Y does not work (currently).


Top
 Profile  
Reply with quote  
 Post subject: Re: ACIA sense check
PostPosted: Sat May 07, 2016 8:59 am 
Offline
User avatar

Joined: Sun Sep 08, 2013 10:24 am
Posts: 740
Location: A missile silo somewhere under southern England
Ok issue fixed and it was caused by the omission of one line of code. I'm going to go through and re-check all assembler modes as a precaution.

Another issue I found (on a slightly different but related note) I also found a fault on my Bus Monitor V4 so that A15 and A14 were misreporting. Fixed.

Talk about a bit of a self inflicted train wreck, but you (or me in this instance) live and learn and now all issues found have been fixed in short order :oops: :roll: .

Attachment:
ItLiedToMe_ButNotAnyMore.gif
ItLiedToMe_ButNotAnyMore.gif [ 119.79 KiB | Viewed 636 times ]


Top
 Profile  
Reply with quote  
 Post subject: Re: ACIA sense check
PostPosted: Sat May 07, 2016 3:55 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10986
Location: England
Nothing wrong with following the convention of your choice - the Beeb has many active adherents!


Top
 Profile  
Reply with quote  
 Post subject: Re: ACIA sense check
PostPosted: Sat May 07, 2016 4:33 pm 
Offline
User avatar

Joined: Sun Sep 08, 2013 10:24 am
Posts: 740
Location: A missile silo somewhere under southern England
BigEd wrote:
Nothing wrong with following the convention of your choice - the Beeb has many active adherents!

Indeed :).

BTW, I thought writing 0 to the status flag reset the ACIA, but it doesn't seem to.
If I reset the uP it will sometimes write rubbish to the COM port and I suspect it's because of corrupted comms due to the reset, although I'm not sure. All subsequent comms then seem to be rubbish so I suspect that the output transmissions are out of phase. Incoming transmissions are fine after a couple of bytes of rubbish.

I know that writing 0 to the status register resets some of the IC, but some flags get left behind. Looking into it by... re-reading the manual lol.


Top
 Profile  
Reply with quote  
 Post subject: Re: ACIA sense check
PostPosted: Sat May 07, 2016 6:38 pm 
Online
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8546
Location: Southern California
banedon wrote:
BTW, I thought writing 0 to the status flag reset the ACIA, but it doesn't seem to.

The data book says that writing anything to the status register does a programmed reset but that it's not as complete as a hardware reset. Just make it a habit to set everything up before getting going and not assume things.

_________________
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?


Top
 Profile  
Reply with quote  
 Post subject: Re: ACIA sense check
PostPosted: Sat May 07, 2016 7:16 pm 
Offline
User avatar

Joined: Sun Sep 08, 2013 10:24 am
Posts: 740
Location: A missile silo somewhere under southern England
GARTHWILSON wrote:
banedon wrote:
BTW, I thought writing 0 to the status flag reset the ACIA, but it doesn't seem to.

The data book says that writing anything to the status register does a programmed reset but that it's not as complete as a hardware reset. Just make it a habit to set everything up before getting going and not assume things.

A have as far as I'm aware and it does work - until a reset. The 65c02 runs exactly the same ACIA setup code after reset as it does on power up.


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 52 posts ]  Go to page Previous  1, 2, 3, 4

All times are UTC


Who is online

Users browsing this forum: Google [Bot] and 45 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: