6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Tue May 21, 2024 5:29 am

All times are UTC




Post new topic Reply to topic  [ 42 posts ]  Go to page Previous  1, 2, 3  Next
Author Message
PostPosted: Sun Jan 19, 2014 11:02 am 
Offline

Joined: Sat Sep 21, 2013 3:26 pm
Posts: 14
Location: Slowakia
GARTHWILSON wrote:
zz_indigo wrote:
I use internal weak pul-up. I dont have ani problem with ZX80/ZX81/Jupiter ACE cores.And your core working OK. Problem is ony with cegmon in first selection.

Is there a speed difference? The internal weak pull-ups may be much too weak to charge up the capacitance on the line in time for a faster speed. I seem to remember that for the PS/2 keyboard interface normally uses 4.7K, whereas internal weak pull-ups are anywhere from 100K to 20M on various ICs.


Speed is no option. Keyboard pin on FPGA is used as inputs. Any core don't comunicate to keyboard. All comunication si keyboard to FPGA.

This realisation of input work in all modern ps/2 keyboard where i tried. I have problem only in cegmon first option.

_________________
http://zz-indigo.mavipet.sk/


Top
 Profile  
Reply with quote  
PostPosted: Sun Jan 19, 2014 3:54 pm 
Offline

Joined: Wed Jan 04, 2012 9:02 pm
Posts: 65
I tried but have no issues at all.
C/W/M work as expected. D won't, because that is disk.
Other keys that have been decoded cause the C/W/M/D prompt to reappear (flicker) correctly as on the real machine, and other keys not decoded do nothing, as expected.

So, when you press another key instead of C/W/M, what exactly happens? Locks up, screen corrupted? Anything then happen when you press C ?

Can you remove the board that you have and connect the pins directly, as on my page to see if it works in case there is something else causing the issue. Someone I am correspondence with has built it with 40K expansion and it works as expected, and the same as I get.

Regards.

Grant.


Top
 Profile  
Reply with quote  
PostPosted: Sun Jan 19, 2014 5:29 pm 
Offline

Joined: Sun Jan 19, 2014 4:53 pm
Posts: 3
Hi All,
First a big thank you to Grant for all the time he has spent on all his projects and sharing them with us. Grant's web page must be the best one on the net. I have the UK101 working with only 4k internal ram on this board, and this afternoon I wired up an external ram giving 40k. Worked first time. It does work with CEGMON. I havn't used "pull ups" on the keyboard at all and works with 2 ps2 keyboards that I've tried. Would love to post a picture if this forum allows pic uploads as Invaders looks brill and surprisinly fast. My next step is to see how fast I can overclock the processor with my ram "MH628128LP-10". For anyone with a DE1 board you only need to change the pin assignment and it will work on that platform too. I'll try it on my Xilinx Spartan 3E board if I get time.

Thanks, Graeme.


Top
 Profile  
Reply with quote  
PostPosted: Sun Jan 19, 2014 7:29 pm 
Offline

Joined: Sat Sep 21, 2013 3:26 pm
Posts: 14
Location: Slowakia
zx80nut wrote:
So, when you press another key instead of C/W/M, what exactly happens? Locks up, screen corrupted? Anything then happen when you press C ?


Actualy i syntetize your latest code (with license header and change cpuclock count From 50 to 49) and testet it.

I test murtiple key combinations a problem is no any key but only D key. My fault.

But i have other "problem" i can't undestand loading and saving programs.

LOAD redirect input to RS232
SAVE redirect output to RS232

But i can't revert is back.

_________________
http://zz-indigo.mavipet.sk/


Last edited by zz_indigo on Sun Jan 19, 2014 7:42 pm, edited 1 time in total.

Top
 Profile  
Reply with quote  
PostPosted: Sun Jan 19, 2014 7:42 pm 
Offline

Joined: Wed Jan 04, 2012 9:02 pm
Posts: 65
Hi.
Not sure I understand, but the D key is supposed to crash the computer - it does on the real UK101 as well because there is no disk connected.

You say there is no problems with the other keys? If that is the case, then it is working exactly as the original UK101.

Grant


Top
 Profile  
Reply with quote  
PostPosted: Sun Jan 19, 2014 7:45 pm 
Offline

Joined: Sat Sep 21, 2013 3:26 pm
Posts: 14
Location: Slowakia
zx80nut wrote:
Hi.
Not sure I understand, but the D key is supposed to crash the computer - it does on the real UK101 as well because there is no disk connected.

You say there is no problems with the other keys? If that is the case, then it is working exactly as the original UK101.

Grant


Yes as you write.

Sorry mi english is poor.

_________________
http://zz-indigo.mavipet.sk/


Top
 Profile  
Reply with quote  
PostPosted: Sun Jan 19, 2014 9:04 pm 
Offline

Joined: Wed Jan 04, 2012 9:02 pm
Posts: 65
"Grimy" (see earlier post) has kindly sent me pics that can be uploaded here... Shows using the same board that I use and a VERY neat piggy-back board holding the extended RAM chip and connectors.
Also shows CEGMON running and 40K BASIC RAM on his machine.

Image

Image

Image

Looking great - a fully expanded UK101 to fit in the palm of your hand :)

Regards.

Grant
http://searle.hostei.com/grant/uk101FPGA/


Top
 Profile  
Reply with quote  
PostPosted: Sun Jan 19, 2014 10:48 pm 
Offline

Joined: Sat Sep 21, 2013 3:26 pm
Posts: 14
Location: Slowakia
Video of testing turbo feature.

Good work Grant!

_________________
http://zz-indigo.mavipet.sk/


Top
 Profile  
Reply with quote  
PostPosted: Mon Jan 20, 2014 12:18 am 
Offline

Joined: Wed Jan 04, 2012 9:02 pm
Posts: 65
Hi.
Thanks. Great that my modification instructions work :)

Just got 8K Super Invaders transferred from tape (original).

A tape in my box of UK101 stuff:
Image

Here it is running on the FPGA:
Image

It needs at least 8K (obviously!) and the tape loader does not work with CEGMON. So, you will need to use MonUK02. Not a fault with my FPGA - that tape was produced before CEGMON so isn't compatible.

Additionally, the speed of the space invaders is actually controlled by sending characters to the serial port ( ! ). As my FPGA currently runs at 9600BAUD instead of 300BAUD it runs too fast. You will need to change the VHDL to use 300 baud (already commented with appropriate values in the VHDL clock divider code) then make sure the serial terminal is set to 300 baud when doing the "LOAD" from within BASIC. Once you have made that speed change, it runs exactly the same as the original (I have BOTH original and FPGA running at the moment next to each other). I haven't seen this ANYWHERE on the web, so here it is for you. There is an alternative, and also good, version of invaders that runs in 4K and works with CEGMON - just search the web. I just thought I'd include this version as it can't be found anywhere else, so may be quite rare?

To load, connect a PC terminal session to the board at the appropriate baud rate with hardware handshaking. The PC takes the place of the cassette and the cassette data is read via the serial interface - this is EXACTLY how it works on the real UK101.
Cold start BASIC
Type LOAD in BASIC and press enter. NOTE: All commands are now taken from the serial port - the keyboard won't do anything anymore - to regain control back to the keyboard if needed press SPACE - load will then be terminated. This is how the real UK101 works. Please see the manual for details.
Send the text file from the PC to the FPGA. Takes a while because it is now only running at 300 baud.
Once complete, invaders will run automatically.


Have fun.

Grant


Attachments:
SuperInvaders_NO_NULLS.txt [11.77 KiB]
Downloaded 129 times
Top
 Profile  
Reply with quote  
PostPosted: Mon Jan 20, 2014 4:34 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10802
Location: England
Hi Grant
Please could you say a bit about the FPGA programming possibilities and necessary hardware, or give a pointer to a document? (I'm only familiar with Xilinx, not Altera)
These little boards do look very interesting, for this UK101 project or for other purposes.
Thanks
Ed


Top
 Profile  
Reply with quote  
PostPosted: Mon Jan 20, 2014 7:11 pm 
Offline

Joined: Sun Jan 19, 2014 4:53 pm
Posts: 3
With the ram on the pic that Grant posted for me I could run at 10Mhz. Tried a Toshiba TC551001CP-70L (70ns) not any better. I have some Cypress CY7C109-15VC (15ns) and can run at 25Mhz after some tweaks. It's SMD so soldered it to a header board. Will make up a PCB when I get a chance. At 1Mhz a for/next printing 0-10000 took 649 seconds at 1Mhz. At 25Mhz, 26seconds that's 25 times faster so all good 8)

Graeme.


Top
 Profile  
Reply with quote  
PostPosted: Tue Jan 21, 2014 9:52 am 
Offline

Joined: Wed Jan 04, 2012 9:02 pm
Posts: 65
BigEd wrote:
Hi Grant
Please could you say a bit about the FPGA programming possibilities and necessary hardware, or give a pointer to a document? (I'm only familiar with Xilinx, not Altera)
These little boards do look very interesting, for this UK101 project or for other purposes.
Thanks
Ed


Hi Ed.
Regarding programming etc...

The main development suite from Altera is "Quartus II". There is a paid version and a free version. The free one works perfectly well, but excludes some of the more advanced simulation facilities and parallel compilation. No need for any of the paid features, though.

The very latest version of Quartus II no longer supports the Cyclone II devices (which this board uses) however Altera still has download links for several older versions, so I can't see support being removed for a long time yet. You would need version 13.0, service pack 1 as the latest version that supports this board.
It's avery big download, but their server is quick so if you have a fast connection then it doesn't take long.

The Quartus II software uses "projects" to control what files ar needed (common to other environments). The QPF file is the project file, the QSF file is the configuration (pin assignments, pull-up assignments etc) then you have the normal VHD files for VHDL. Also supports Verilog if you prefer.

The Altera site has all links open for download and there are several videos and documents on how to create your first project etc.

There is available (ebay etc) a "USB blaster" which is very cheap which is suitable for programming.

Programming can either be a JTAG upload (straight to the FPGA) which is great for development but is lost when powered down, or Active Serial (to the configuration chip) which takes about 10 seconds to program but will keep the configuration so the design reloads immediately power-up.

On the board are two 10 pin headers. The USB blaster connects to the inner one during normal JTAG upload for development. When a more permanent version is needed, plug the USB blaster into the othe header instead, select active program upload within the Altera Quartus II suite and program to the configuration chip instead.

Hope this helps as a starter, please feel free to ask if you need any more info.

I only started using FPGA and VHDL a few months ago (late October) as a hobbyist, so I am no expert but it seems to be going ok :)

Regards.

Grant


Top
 Profile  
Reply with quote  
PostPosted: Tue Jan 21, 2014 7:56 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10802
Location: England
Thanks Grant that's great info. Sounds like programming Altera devices might be a little cheaper and easier to arrange than programming Xilinx devices. I found this post elsewhere:
Quote:
My choices were; Buy an Altera USB Blaster ($300 !), buy a Terasic USB Blaster clone ($50 + shipping from Asia), get some Chinese clone on ebay ($10 - $30). Actually $10 also includes shipping and looks like a great deal.
Anyway while searching online for DIY options, I came across this page which shows a very simple looking one with a PIC18 on it.

So - DIY with a PIC, cheap and cheerful on ebay, or $50 for a brand-name programming adapter.
(A cheap Xilinx compatible dongle is about £30)
Cheers
Ed


Top
 Profile  
Reply with quote  
PostPosted: Tue Jan 21, 2014 9:18 pm 
Offline

Joined: Wed Jan 04, 2012 9:02 pm
Posts: 65
Nothing wrong with the cheap ones on eBay.
You can get a USB Blaster (well, compatible) delivered directly from a UK eBay supplier for less than £7 inclusive of postage !

As I said originally in the very first post on this thread, an inexpensive board and an inexpensive programmer is all you need :) That's all I use (and I have used them very regularly over the last couple of months with no issues).

Regards.

Grant


Top
 Profile  
Reply with quote  
PostPosted: Tue Jan 21, 2014 9:32 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10802
Location: England
Indeed, £7 is very good,and it's good to know that they work as they should!


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

All times are UTC


Who is online

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