6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Sat Nov 23, 2024 11:26 pm

All times are UTC




Post new topic Reply to topic  [ 430 posts ]  Go to page Previous  1 ... 19, 20, 21, 22, 23, 24, 25 ... 29  Next
Author Message
PostPosted: Sun Feb 10, 2019 3:41 am 
Offline

Joined: Mon May 21, 2018 8:09 pm
Posts: 1462
I think what I actually said was that I *didn't* think that part was made in a direct equivalent CMOS version.


Top
 Profile  
Reply with quote  
PostPosted: Sun Feb 10, 2019 3:50 am 
Offline

Joined: Fri Jan 25, 2019 5:40 am
Posts: 346
Location: Knoxville, TN
Chromatix wrote:
I think what I actually said was that I *didn't* think that part was made in a direct equivalent CMOS version.


Right, I mispoke, what I meant was links for the similar parts.


Top
 Profile  
Reply with quote  
PostPosted: Sun Feb 10, 2019 4:02 am 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8546
Location: Southern California
backspace119 wrote:
GARTHWILSON wrote:

Just to make sure you're looking at it right— My 4Mx8 10ns 5V SRAM module has (this is copied from the data sheet):

  • eight separate CE\ pins, possibly allowing faster selects by handling the computer's entire address-decoding scheme with programmable logic if desired than you would get from adding a 74xx138 to this plus the computer's other address-decoding logic
  • two WE\ pins, one for each set of four ICs, so your circuit can write-protect half at a time if desired
  • two OE\ pins, one for each set of four ICs (grouped the same way as the WE\ pins)

Any global enable will be in your circuit's logic.


Ya what I mean is, I have OE and WE pins tied together on the module, and I can put their enable on a NAND gate with inputs of A23 and Write/Read that are active high.

You would have to invert either OE or WE, since they're both negative logic.  They'll have to be opposites.

Quote:
The other chip I'd need to invert A24.

A23?  The 24 address lines are A0 to A23.

Quote:
GARTHWILSON wrote:
A PLL (phase-locked loop) might be another good way to do it, where instead of outputting a number to a DAC to directly feed a VCO, that number is instead the divider for the PLL.  (Of course the PLL has its own VCO too though.)

I looked briefly at PLLs. After reading how they work on wikipedia they seemed to not be a good option though, as from what I read it seems they try and match a reference clock, rather than generate a variable clock.

That's where the divider comes in, as shown in the third diagram in that wikipedia article.  The divider block is labeled "÷N (optional)".  The output frequency then is usually much higher than the input frequency, and goes in multiples of the input.  (What it does not show is that the input could also be divided down, by a different number, adding to the flexibility.)

_________________
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  
PostPosted: Sun Feb 10, 2019 4:07 am 
Offline

Joined: Fri Jan 25, 2019 5:40 am
Posts: 346
Location: Knoxville, TN
GARTHWILSON wrote:
You would have to invert either OE or WE, since they're both negative logic. They'll have to be opposites.

Ya that's what I have set up, I'll attach and image to the end of this.

GARTHWILSON wrote:
A23? The 24 address lines are A0 to A23.

whoops, ya, I meant a23


GARTHWILSON wrote:
That's where the divider comes in, as shown in the third diagram in that wikipedia article. The divider block is labeled "÷N (optional)". The output frequency then is usually much higher than the input frequency, and goes in multiples of the input. (What it does not show is that the input could also be divided down, by a different number, adding to the flexibility.)

I'll go back to the article, after I read that it was used for phase matching I had moved away from it, since msot of the PLLs on mouser were smd packages anyway.

EDIT: forgot the picture
Attachment:
4mram.PNG
4mram.PNG [ 6.89 KiB | Viewed 625 times ]


Top
 Profile  
Reply with quote  
PostPosted: Sun Feb 10, 2019 4:55 am 
Offline

Joined: Fri Jan 25, 2019 5:40 am
Posts: 346
Location: Knoxville, TN
So I added in a second 4M module, just to see how the schematic would look (haven't moved back to the PCB yet, want to get the clock situation sorted). and I settled with the circuit at the end of this for the WE and OE connections, to maintain only max 3 gate delays for both devices (as opposed to 4 on the second, having to invert A23 before sending it to the NAND).

Attachment:
4mram2.PNG
4mram2.PNG [ 10.67 KiB | Viewed 623 times ]


EDIT: just to be clear, the WRITE and READ signals in my last post are active high, these signals are WRITE\ and READ\ active low. ( it can be hard to see the lines above them)


Top
 Profile  
Reply with quote  
PostPosted: Sun Feb 10, 2019 7:06 am 
Offline

Joined: Sat Dec 13, 2003 3:37 pm
Posts: 1004
backspace119 wrote:
I've been considering the possibility of trying to port the original DOOM to run on this machine.

It's a bit of a running joke to port DOOM to random machines, and it's been done for a lot of crazy stuff. This is by no means a mandatory operation of the design, but it's a fun stretch goal that, if I make it work, would be pretty cool.

A cursory look over some of the requirements to run DOOM tells me that this will be a very difficult task, and is probably out of the realm of possibility. The requirements on x86 are:

    a 486 running at 66Mhz
    8MB of ram
    about 100MB of storage
    windows 95/98/ME/2k compatible 16bit sound card

Just as an aside, you certainly don't need a 66MHz 486 to run DOOM.

I routinely played it on a 486sx 25Mhz laptop back in the day, and it was developed on a 25Mhz '040 NeXTStation.

Is a 20Mhz '816 enough? I dunno, but you certainly didn't need a 66Mhz machine to play DOOM back in the day.


Top
 Profile  
Reply with quote  
PostPosted: Sun Feb 10, 2019 7:42 am 
Offline

Joined: Fri Jan 25, 2019 5:40 am
Posts: 346
Location: Knoxville, TN
whartung wrote:
Just as an aside, you certainly don't need a 66MHz 486 to run DOOM.

I routinely played it on a 486sx 25Mhz laptop back in the day, and it was developed on a 25Mhz '040 NeXTStation.

Is a 20Mhz '816 enough? I dunno, but you certainly didn't need a 66Mhz machine to play DOOM back in the day.


Huh, I'm too young to have played it on the first computer I used (a Pentium II running around 300Mhz) but I have it emulated on a pi powered arcade machine.

20mhz is going to be tough to hit, I'm hoping that I can optimize this well enough to be able to run it though.


Top
 Profile  
Reply with quote  
PostPosted: Sun Feb 10, 2019 7:51 am 
Offline

Joined: Fri Jan 25, 2019 5:40 am
Posts: 346
Location: Knoxville, TN
So I just found this which seems perfect, but it's resistance controlled, and I'm not sure if it can be changed while live yet. Thoughts?


Top
 Profile  
Reply with quote  
PostPosted: Sun Feb 10, 2019 8:04 am 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8546
Location: Southern California
backspace119 wrote:
So I just found this which seems perfect, but it's resistance controlled, and I'm not sure if it can be changed while live yet. Thoughts?

It's the resistance to Vcc.  You should be able to have a set of resistors switched in or out by a VIA's (or similar I/O IC) port bits.  One end of each resistor goes to that pin on the part you found, and the other end of each resistor goes to a VIA port pin.  Put 1's in every relevant bit of the port's output register.  Then to connect the resistor, make the data direction bit an output.  To disconnect it, make it an input.  WDC's 65c22's port pins are truly high-impedance in the input mode, unlike other companies'.  This is not an R-2R ladder.  Every resistor will have a different value.

_________________
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  
PostPosted: Sun Feb 10, 2019 8:09 am 
Offline
User avatar

Joined: Tue Nov 16, 2010 8:00 am
Posts: 2353
Location: Gouda, The Netherlands
Or use a digital potentiometer. If you get a non-volatile kind, it will remember the setting when the board is powered down.


Top
 Profile  
Reply with quote  
PostPosted: Sun Feb 10, 2019 8:13 am 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10986
Location: England
Some recent ideas in this (long!) thread which might benefit from new dedicated threads:
- continuously-variable clocking of a 6502 system
- porting DOOM to a 6502 system
- Mouser's filtering mixes up surface-mount and through-hole


Top
 Profile  
Reply with quote  
PostPosted: Sun Feb 10, 2019 8:14 am 
Offline

Joined: Fri Jan 25, 2019 5:40 am
Posts: 346
Location: Knoxville, TN
GARTHWILSON wrote:
backspace119 wrote:
So I just found this which seems perfect, but it's resistance controlled, and I'm not sure if it can be changed while live yet. Thoughts?

It's the resistance to Vcc. You should be able to have a set of resistors switched in or out by a VIA's (or similar I/O IC) port bits. One end of each resistor goes to that pin on the part you found, and the other end of each resistor goes to a VIA port pin. Put 1's in every relevant bit of the port's output register. Then to connect the resistor, make the data direction bit an output. To disconnect it, make it an input. WDC's 65c22's port pins are truly high-impedance in the input mode, unlike other companies'. This is not an R-2R ladder. Every resistor will have a different value.


Sweet, so then I can probably use this just fine, the rise time on it looks pretty decent too.

The via idea I'm not sure about, it seems like a waste of via pins for clock control, I may try and find another way to switch out resistance on it.

Arlet wrote:
Or use a digital potentiometer. If you get a non-volatile kind, it will remember the setting when the board is powered down.


This is probably what I'll do, the only issue with a non volatile one would be setting a too high clock and not being able to set it back or save myself by just resetting. Also, at power up it needs the slow clock, so if I had a power failure it wouldn't be able to reboot.

Still though, digital pot is probably the way to go, I just wasn't sure if I could change the frequency live.

BigEd wrote:
Some recent ideas in this (long!) thread which might benefit from new dedicated threads:
- continuously-variable clocking of a 6502 system
- porting DOOM to a 6502 system
- Mouser's filtering mixes up surface-mount and through-hole


Good idea, I'll post some more threads about the individual ideas to keep things organized, should I still post them in newbies? Or elsewhere?


Top
 Profile  
Reply with quote  
PostPosted: Sun Feb 10, 2019 8:18 am 
Offline
User avatar

Joined: Tue Nov 16, 2010 8:00 am
Posts: 2353
Location: Gouda, The Netherlands
backspace119 wrote:
This is probably what I'll do, the only issue with a non volatile one would be setting a too high clock and not being able to set it back or save myself by just resetting. Also, at power up it needs the slow clock, so if I had a power failure it wouldn't be able to reboot.

You could do a jumper in series/parallel so you have the option for manual override.


Top
 Profile  
Reply with quote  
PostPosted: Sun Feb 10, 2019 8:47 am 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10986
Location: England
backspace119 wrote:
BigEd wrote:
Some recent ideas in this (long!) thread which might benefit from new dedicated threads:
- continuously-variable clocking of a 6502 system
- porting DOOM to a 6502 system
- Mouser's filtering mixes up surface-mount and through-hole


Good idea, I'll post some more threads about the individual ideas to keep things organized, should I still post them in newbies? Or elsewhere?


Great! Not Newbies, I think - this is not getting-started stuff. Choose Hardware or Software forums if it's obvious, or General otherwise.


Top
 Profile  
Reply with quote  
PostPosted: Sun Feb 10, 2019 8:50 am 
Offline

Joined: Fri Jan 25, 2019 5:40 am
Posts: 346
Location: Knoxville, TN
BigEd wrote:
backspace119 wrote:
BigEd wrote:
Some recent ideas in this (long!) thread which might benefit from new dedicated threads:
- continuously-variable clocking of a 6502 system
- porting DOOM to a 6502 system
- Mouser's filtering mixes up surface-mount and through-hole


Good idea, I'll post some more threads about the individual ideas to keep things organized, should I still post them in newbies? Or elsewhere?


Great! Not Newbies, I think - this is not getting-started stuff. Choose Hardware or Software forums if it's obvious, or General otherwise.


I actually already did that, after I realized that was probably the correct option, mouser is in general, doom in programming, and clock in hardware


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 430 posts ]  Go to page Previous  1 ... 19, 20, 21, 22, 23, 24, 25 ... 29  Next

All times are UTC


Who is online

Users browsing this forum: No registered users and 19 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: