| |
Testa Account closed
Registered: Oct 2004 Posts: 197 |
fetch the 0-sprite. with open borders...
hi,
ik have a little problem.. i want to open the sideborders with the 4 lowest sprites... i have two questions about it..
when i do the D016 write i use a dec d016 or a lsr or ror as opcode... why does a sty, sta, stx not work....
has it something to do with cpu takeover cycles at that point...
second question... what to do on a badline....
there are not enough free cycles. with 4 sprites for a inc, ror or lsr d016 instead of a sta, sty or stx...
i realize it is common knowledge.. but sorry i dont. know it...
bye...
|
|
... 36 posts hidden. Click here to view all posts.... |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
Quote:could you explain it in depth ? including expansion port :)
sorry, no, that'd be a bit too much =P (and i cant say i really fully understand it either, i am not a hardware guy :))
|
| |
Oswald
Registered: Apr 2002 Posts: 5094 |
Quote: Quote:could you explain it in depth ? including expansion port :)
sorry, no, that'd be a bit too much =P (and i cant say i really fully understand it either, i am not a hardware guy :))
translation: "I'm rambling about something I dont understand myself" |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
i understand enough of it to look up the information i need - but certainly not enough to explain it to someone else in great detail. even more so to someone who doesnt already fully understand the relatively simple vic bus takeover =P |
| |
Oswald
Registered: Apr 2002 Posts: 5094 |
you're playing mr smartass, but the end of the day you're only an arrogant asshole. C64 mechanism can be explained in a sentence or two , you claim atari is even simpler -BUT- now you dont want to explain because that would take too much time. You're simply ridiculous. It's crystal clear you have no idea whatsoever. |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
ofcourse, mr. i can't code sideborder =) |
| |
Oswald
Registered: Apr 2002 Posts: 5094 |
ofcourse I cant. btw the problem with the expansions port IIRC that it doesnt have signals like clock. |
| |
Oswald
Registered: Apr 2002 Posts: 5094 |
@mr I know better how c64 and atari DMA works,
>>no, I mean on the c64 you have this 3 cycle zone, while atari does not have this.
>it should be there too, but unlike its done in the c64, they used a much simplier approach to implement it, and halt the cpu regardless if it could still perfom the read cycles or not.
- the cpu stops on the 1st read cycle -> you should have written write cycle :P
- if you stop the cpu regardless of the read(write) cycle you dont need 3 cycle safety zone.
- its obvious you have no idea how it works on the atari, just some vague ones :) |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
no, thats not the problem. there are even two clocks (dotclock and phi2). the "problem" is that the timing at the port isn't all that great (and worse, shifts a bit over time), and you have to gate several signals with either ba or rw "manually" so you can read/write/assert other signals like dma (or even just adress and/or data) at the right time, and that not only for the reason the vic has to use aec/rdy. it's a bit more complex than you think :) its somewhat like "remote controlling" the signals that control the cpu, but "through" the vic instead. (eg the vic controls the cpu by rdy and aec, on the expansion port you have ba and dma instead, which serve a similar purpose, but not exactly). (and at this point some hardware guy should take over, because i really cant explain it without some bus diagrams)
"- if you stop the cpu regardless of the read(write) cycle you dont need 3 cycle safety zone."
but you CANT stop the cpu during a write cycle, read what ninja wrote. and you need the safety zone to make sure the rw line is in the correct state when you take over. |
| |
Oswald
Registered: Apr 2002 Posts: 5094 |
on the expansion port, I thought you were talking about problems of the atari one, and asked about that :)
2nd part:
but you can. We're talking of Ataris now, and they had a modded 6502 with a HALT line, also IIRC before this they had a mechanism which simply stopped the clock signal. anyway googling doesnt helps me finding more info on this, but I bet a simpler mechanism than c64's means no 3 cycle puffer zone. |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
Quote:on the expansion port, I thought you were talking about problems of the atari one, and asked about that :)
no :) the atari one seems to miss signals like BA, and there is no phi2 and no dotclock, which makes gating signals (and doing various dirty tricks in particular) a lot harder, if not impossible. (that said, i dont know wether such tricks are needed or possible on ataris. on the c64 you can do fun stuff like putting data ment for the vic on the bus externally this way, for example)
Quote:but you can. We're talking of Ataris now, and they had a modded 6502 with a HALT line, also IIRC before this they had a mechanism which simply stopped the clock signal. anyway googling doesnt helps me finding more info on this, but I bet a simpler mechanism than c64's means no 3 cycle puffer zone.
didnt find detail info either, but "It is identical to the standard 6502 except that it has a HALT input for stopping the processor and tri-stating the system bus so that other chips in the system can do DMA." implies that the logic needed to stop a regular 6502 (by using aec and rdy) was simply moved into the cpu. indeed, this could possibly mean no _3_ cycle buffer zone is needed, maybe 1 is enough.
(btw, simply stopping the clock doesnt work, that again you cant do in a write cycle, because rw would stay low, with the consequences ninja explained. you could stop the clock, assert rdy, and then pray everything goes well though =P) |
Previous - 1 | 2 | 3 | 4 | 5 - Next |