News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_Prox

very simple Expansion Interface (new to CPC)

Started by Prox, 21:11, 04 March 19

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

LambdaMikel

Quote from: rpalmer on 11:55, 28 March 19
I run WinCUPL on my windows 7 machine with no problems.
Good to know. Curious to learn if anybody got it to run on Win 10. I contacted Microchip for that, and they said it's not supported on Win 10.

Bryce

Not supported means they didn't try, it may work anyway.

Bryce.

LambdaMikel

Quote from: Bryce on 08:24, 29 March 19
Not supported means they didn't try, it may work anyway.

Bryce.
Well, I tried, and for me it didn't  ;)

Bryce


LambdaMikel

Quote from: Bryce on 09:53, 29 March 19
Even in compatible mode?

Bryce.
Right, even then. It has something to do with how the access the file system - haven't tried in a while, but if I remember correctly, then the problem is that the "compiler" can't find the chip definition files / libraries on  disk. I mean, it starts up correctly and you can use the IDE, but the compiler fails. And I haven't tried burning / flashing directly from it ever. I just grab the BIN or JED file when it's done.

Prox

Quote from: LambdaMikel on 09:09, 29 March 19
Well, I tried, and for me it didn't  ;)


it works perfectly fine on my Win10 machine


i just have to run it as Admin.


also now i need to watch some Tutorials on this.


or you know, there is a way to convert a logic circuit to a GAL compatable .BIN file, that would also work.

LambdaMikel

#81
Quote from: Prox on 17:50, 29 March 19

it works perfectly fine on my Win10 machine




Did you try to compile something yet? This is when the error shows up. Maybe they fixed it since then.
As I wrote, the IDE / UI and editor and all that shows up correctly, but the compiler fails. Let us know specifically if that works for you...

MIght be time to try again for me.


Here is a useful tutorial:


https://optics.csufresno.edu/~kriehn/teaching/ece85l/labs/WINCUPL_Tutorial.docx

LambdaMikel

#82
PS Correct, Win 7 works... don't have Win 10 at hand currently.
It's easy to find out - you Open a file under "Atmel / Examples", and then hit the compile button.

Next to the clipboard - "Device Dependent Compile". That should give no warning and no errors for the examples.

Curious to try Windows 10 at home tonight... attached is a Win 7 screenshot, and that indeed worked well.
(I have Win 7 @ work and Win 10 @ home...)

Prox

#83
Quote from: LambdaMikel on 19:42, 29 March 19
PS Correct, Win 7 works... don't have Win 10 at hand currently.
It's easy to find out - you Open a file under "Atmel / Examples", and then hit the compile button.

Next to the clipboard - "Device Dependent Compile". That should give no warning and no errors for the examples.

Curious to try Windows 10 at home tonight... attached is a Win 7 screenshot, and that indeed worked well.
(I have Win 7 @ work and Win 10 @ home...)


i already wrote some code(?) for a Z80 Computer. so i can replace all the Logic gate chips i use for it.
and it compiled perfectly fine (after serveral errors about missing semicolons)


also now that i was able to compile it... what now? can i somehow convert it into a format that the TL866 II Plus can use to program the chip?
nvm the Programer wants the .JED file which was compiled... problem solved

LambdaMikel

Good to know you got it working on Win 10!
Seems something has changed... or maybe the installation directory makes a difference.


Will try tonight on my Win 10.

LambdaMikel

Thanks for the hint to run it as admin on Win 10... indeed that makes a weird difference.
If I run it as normal user, I am getting an error message that it cannot find a file whereas that indeed goes away if admin runs it! Thanks @Prox

Bryce

That has to do with the stupid permissions (or lack of) that Win10 assigns. Install it on a different drive (outside of C:\Program Files) and it should work as a normal user too.

Bryce.

LambdaMikel

Yes, but good to know that is work on Win 10 with some tweaks.
Given how inexpensive GALs are, they are a very good alternative to the more expensive CPLD for simpler projects. 

Prox

Quote from: LambdaMikel on 15:24, 30 March 19
Yes, but good to know that is work on Win 10 with some tweaks.
Given how inexpensive GALs are, they are a very good alternative to the more expensive CPLD for simpler projects.


yep i also had that error when it was in the program files, i moved it to my portable SSD and everything worked perfectly


well almost, it's quite obvious the program is really old. writing/editing text is kinda strange and glitchly but functional enough to write something.


i was able to test it by replacing th 3 Logic ICs on my Z80 test Computer with a single GAL. it still works perfectly well (after some problems with my 20 MHz Z80 which aparently has a minimum clock rate that if not met just locks up the CPU until reset)

Prox

alright i finished the actual ROM Board, now i just need something on the ROM to test it


Spoiler: ShowHide



Spoiler: ShowHide



the wiring is horrible but everything that needs to be connected is.

the way it should work is that if the Upper ROM Number is >0 it will disable the Internal ROM (aka BASIC) and enable the external ROM.

the upper 4 bits of the ROM Number also have a special use as they select what ROM Bank to use. so with values from $0x to $Fx it will select ROM Bank 0 to 15.

LambdaMikel

Quote from: Prox on 17:37, 02 April 19
the wiring is horrible but everything that needs to be connected is.


Looks neat enough to me from the wiring point of view!


Good progress.

Prox

hmm, bit confused but i almost expected this to happen


the ROM board itself either doesn't work or i overlooked something


i checked for shorts or anything, wrong wires, or similiar. but i found nothing


both the data and address bus show activity when i turn the CPC on. but i get no picture on the TV. and if i let it on long enough it changes the values of the external D-FF and then seems to freeze. not entire sure i don't want to damage anything so i quickly turn it off again each time i checked.


this would be a hell of a lot easier if i could use kicad correctly, i really need to watch some tutorials so i can just make a PCB design and let people who know what they're doing look over the circuit to confirm that it will work.

LambdaMikel

Make sure you are tri-stating the databus etc. correctly...


KiCAD is great, and a PCB is always a good idea. But, you could also just draw the schematics with KiCAD and share it here for "review" / discussion. Until you figured out how to make a PCB. I was in the same situation 2 years ago and was able to learn it from tutorials etc.


Wrt. PCB-advice, I would suggest to also consult the board Mikrocontroller.net. Especially since you are German-speaking - there is no better board / advice in all things electronics. The help you are getting on this board can also be useful, but one also needs to filter a bit... some advice (from people who are hobbyists themselves...) can also safely be ignored   ;)






LambdaMikel

#93
Maybe start with something simpler... a first good test would be to figure out if you can "latch" a byte into the flip flop from the databus, at a specific address. You can verify with the LED segment bars.


I.e., program your decoder to decode &FFxx and then check if from BASIC out &FFxx,<byte> gives you byte in the flip flop reliably. 


Also, your LED segment bars have no resistors??
(And I hope you didn't connect the databus to the LEDs directly??)

Prox

Quote from: LambdaMikel on 21:21, 03 April 19
Maybe start with something simpler... a first good test would be to figure out if you can "latch" a byte into the flip flop from the databus, at a specific address. You can verify with the LED segment bars.


I.e., program your decoder to decode &FFxx and then check if from BASIC out &FFxx,<byte> gives you byte in the flip flop reliably. 


Also, your LED segment bars have no resistors??
(And I hope you didn't connect the databus to the LEDs directly??)


I always connect LED Bar graphs like this:



I know it's just 4 LEDs but imagine the same concept for the data and address bus. so before they connect to the LEDs they got some pull down resistor array (47k Ohm) and after the LEDs they also got a few of them (470 Ohm)

these things. so damn useful and more compact than single resistors.


also you could take a look at my Logic Circuit i wrote for the GAL i used, if that helps.

LambdaMikel

#95
Quote from: Prox on 04:29, 04 April 19
I know it's just 4 LEDs but imagine the same concept for the data and address bus. so before they connect to the LEDs they got some pull down resistor array (47k Ohm) and after the LEDs they also got a few of them (470 Ohm)
Hang on - that means you have a 8 pull down resistors constantly connected to the databus?? Did you try running your circuit without pulldown resistors?

Yes, resistor arrays (especially with LED segment bars) are neat.

I would probably also try to remove the flip flop from the circuit altogether, and put that logic also into the GAL...

Prox

#96
is there a problem with pull down reistors? i used the same design for my own Z80 Computer, and i also used it to test the connector. where i basically only had the LED Bars hook up without the Rest of the ROM Board. and that ran perfectly fine


i can try without though


EDIT: that didn't work but i removed everything and now the CPC works perfectly again and i'm back at square one.


also i didn't knew you could program D-FF into the GAL.... how?

LambdaMikel

Quote from: Prox on 05:41, 04 April 19
is there a problem with pull down reistors? i used the same design for my own Z80 Computer, and i also used it to test the connector. where i basically only had the LED Bars hook up without the Rest of the ROM Board. and that ran perfectly fine
I am not an expert - so don't take me too serious here...

I mean, the devices connected to the bus should be tri-state, right? It depends on the value of the resistor. Certainly, if the resistor value is too low, you always put 0 on the bus and it jams the bus. Just not sure why you want pull down resistors here.

There are flip flops modeled in the GAL / Atmel examples directory, you can use these. And, it is possible to make GAL outputs tristate as well! 

LambdaMikel

#98
... the key towards tri-state with GAL is the ".oe" flag.

Check out this example and the last line:

https://github.com/lambdamikel/LambdaSpeak/blob/master/firmware/ls199/gal22v10/ls199-databus-multiplexer-U3.PLD
So, I would start simple... step by step. And only go to the next level of the circuit if the previous one did work, add functionality bit by bit, otherwise you have a hard time debugging.

For the LEDs, I would probably always try to use some line driver rather than connecting them directly to the buses.

Bryce

Those pull down resistors are definitely messing things up. It's forcing 0's on the bus lines when they should be High-Z. This will work on dedicated buses, but not shared ones.


Bryce.

Powered by SMFPacks Menu Editor Mod