|
Vintage Computers Any vintage computer systems, calculators, video games etc., but with an emphasis on 1980s and earlier equipment. |
|
Thread Tools |
27th Mar 2018, 10:19 pm | #41 |
Nonode
Join Date: May 2007
Location: Redruth, Cornwall, UK.
Posts: 2,580
|
Re: Interpreting a hexdump table
Much appreciated SiriusHardware thanks.
Regards Symon. |
1st Apr 2018, 7:49 pm | #42 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,586
|
Re: Interpreting a hexdump table
Haven't forgotten this - still error checking in little chunks to avoid brain fatigue - I'm now 3/4 of the way through.
|
4th Apr 2018, 6:45 pm | #43 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,586
|
Re: Interpreting a hexdump table
I'm at the point where I now have an inspected / corrected version of the labyrinth image code. What I do with it next depends on what you (Philips210) can do with it. Are you at the point where you can upload code files into either your PP28 or your Dataman S4?
I could post the code here in this thread as attachments in various hex file formats but I'm not sure what the forum will do with uploaded files with .BIN, .INT, .HEX, .S1F extensions or even whether it will allow me to post them at all. Another option is for me just to find a 2716, program the code into it and send it to you. |
4th Apr 2018, 10:51 pm | #44 |
Nonode
Join Date: May 2007
Location: Redruth, Cornwall, UK.
Posts: 2,580
|
Re: Interpreting a hexdump table
Hi SiriusHardware.
I appreciate your effort on this, it must have taken a fair amount of your time and thanks. I so far don't have the accompanying software for the Stag PP28 and haven't yet looked into approaching the Dataman S4. I will get around to this at some stage but have been preoccupied with several other tasks. I have been doing some more tests on the PP28 and worked out how to check if the contents of the EPROM are empty. I erased a few EPROMS in the eraser (20 minute duration) and successfully loaded data from a pre-programmed EPROM into the programmer's RAM. I then programmed a blank EPROM and verified its successful operation. It would have been good to be able to run things from the PC. I'll get in contact with the French chap that you mentioned and he may be able to assist regarding the software. I haven't yet started building the Elabyrinth project. Regarding programming the 2716 EPROM, I could send you a blank if that's OK. PM if that will be acceptable. I had thought about manually entering the values but the problem being that I currently won't be able to save the RAM contents in stages so it would have to be done in one session, a tall order plus it's prone to many errors and a test of one's sanity! The software for this programmer being essential for such a large hexdump. Regards Symon |
4th Apr 2018, 11:58 pm | #45 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,586
|
Re: Interpreting a hexdump table
If you want to take the eprom approach, don't worry about sending a 2716, I will have a tube of them here somewhere. Keep your blanks handy because, although I did the best I could on one pass through, there might still be one or two differences between 'my' final version and the printed dump.
The best way to check that is for another pair of fresh eyes - yours - to have a look through it. If you read my version of the code out of the eprom and into your PP28 and step through, altering any values which you think don't match a printout of the dump, you can then programme your edited version of the code into one of your blanks and make that the new 'master' copy. It'll take me a few days to round up one of my 2716s and the programmer and computer needed to program it - I'll PM you when it's ready to go. |
5th Apr 2018, 8:48 am | #46 |
Nonode
Join Date: May 2007
Location: Redruth, Cornwall, UK.
Posts: 2,580
|
Re: Interpreting a hexdump table
Thanks SiriusHardware, I am grateful for that.
Regards Symon. |
6th Apr 2018, 11:52 am | #47 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,586
|
Re: Interpreting a hexdump table
Symon, PM sent.
|
13th Apr 2018, 2:10 pm | #48 |
Octode
Join Date: Apr 2018
Location: Newbury, Berkshire, UK.
Posts: 1,287
|
Re: Interpreting a hexdump table
I've done this in the past, it takes less time than you think if you don't try to do it all in one burst and take a break between "sessions". I had a 4K rom to make from a paper listimg, and I did it twice on seperate days so I could compare the files. It's a good job I did, because I discovered 3 errors (zeroes, Bs and eights look a lot like eachother!)
In my case I typed the numbers into a text file and wrote a Python program to convert it to a binary image, since that seemed easier than generating an intel hex file, and my programmer accepted both. |
14th Apr 2018, 10:51 am | #49 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,586
|
Re: Interpreting a hexdump table
Snap! That's almost exactly what I did, used a Python program to strip the ASCII hex bytes from the manually corrected OCRed version of the hex dump. Python has some fairly powerful commands for converting from one format to another.
Symon now has a (hopefully correct) eprom containing this code. Fingers crossed, it doesn't contain any errors. |
14th Apr 2018, 9:54 pm | #50 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,586
|
Re: Interpreting a hexdump table
...Six errors, apparently. Not one of my best efforts.
|
14th Apr 2018, 11:25 pm | #51 |
Nonode
Join Date: May 2007
Location: Redruth, Cornwall, UK.
Posts: 2,580
|
Re: Interpreting a hexdump table
Hi
I would like to thank Graham (SiriusHardware) for supplying a programmed EPROM for the Elabyrinth project. He must have put a fair amount of his time to this so I am grateful for that. The OCR method to read a printed hexdump is quite efficient. Ambiguities crop up occasionally when deciding whether a 0 with a diagonal is actually a 0 or a 8. Also a 8 could be read rather than a B and vice versa. A few errors were easily edited and another EPROM was programmed. I hope to build the circuit over the coming weeks. Regards Symon. |
16th Aug 2018, 9:58 pm | #52 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,586
|
Re: Interpreting a hexdump table
Symon,
When we were discussing this a while back you sent me a link to an English language (Elektor India) version of the 'Labyrinth' article. For some reason, that original link didn't work for me and I forgot to ask you where you had found it. Do you have a working link to that (English) version of the article? |
16th Aug 2018, 10:36 pm | #53 |
Nonode
Join Date: May 2007
Location: Redruth, Cornwall, UK.
Posts: 2,580
|
Re: Interpreting a hexdump table
Hi SiriusHardware.
I can't recall the URL for the original website that had the Indian version of Elektor but I've noticed it's available here https://www.americanradiohistory.com...In-1984-04.pdf I'm sorry to say that I haven't been able to build the elabyrinth circuit as I have had a very busy time sorting out my property repairs but I certainly will build the circuit before long. Regards Symon. |
16th Aug 2018, 11:05 pm | #54 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,586
|
Re: Interpreting a hexdump table
Thanks for the link.
I was looking through this thread again and realised that the BBC Micro:Bit, (Image #1) with its built in 5 * 5 LED grid display, would be an interesting platform to try to make a version of this game with. It has a built in tilt sensor so the player could move by tilting in the direction he / she wanted to go in. Or, to be more ambitious, it could also be done using an Arduino Uno fitted with a 'Lots Of Leds' Shield (Image #2). On that board you could display not only the cell the player is in but the eight cells surrounding him as well, and you could keep the player in the centre and 'scroll' the maze around him. Either way, just for fun, I was thinking of incorporating the original 1984 Elektor maze data to give it an authentically retro slant. The article describes the format of the maze data, where bits 0-3 represent the presence or absence of the four possible walls wall in each cell, and the upper bits represent other objects of interest (gates, keys, etc). Unfortunately, I tend to have these ideas, but then always find excuses to do something else instead... |
17th Aug 2018, 7:33 pm | #55 |
Nonode
Join Date: May 2007
Location: Redruth, Cornwall, UK.
Posts: 2,580
|
Re: Interpreting a hexdump table
Hi.
Sounds like an interesting challenge and a lot of fun. I have very limited skills in coding and I've been considering purchasing a BBC Micro:bit system but have also been thinking about Raspberry Pi. They're both reasonably priced so maybe it's worth having both? Any advice on the pros and cons and which to invest in? Regards Symon |
17th Aug 2018, 8:21 pm | #56 |
Dekatron
Join Date: Aug 2013
Location: Wigan, Greater Manchester, UK.
Posts: 9,433
|
Re: Interpreting a hexdump table
The computer you already have can be be used for learning programming, the Pi runs a version of Linux, if you don’t want to dual boot your computer, run a distribution of Linux in a VM.
__________________
Frank |
17th Aug 2018, 10:25 pm | #57 |
Dekatron
Join Date: May 2008
Location: Derby, UK.
Posts: 7,735
|
Re: Interpreting a hexdump table
I can recommend the Raspberry Pi. You can have fun connecting LEDs, sensors and switches to the GPIO pins, which you can't really do on a laptop or desktop PC. CPC do a kit with a Raspberry Pi, a solderless breadboard and a bag of components for some quick, simple projects.
__________________
If I have seen further than others, it is because I was standing on a pile of failed experiments. |
18th Aug 2018, 11:07 am | #58 |
Dekatron
Join Date: Aug 2013
Location: Wigan, Greater Manchester, UK.
Posts: 9,433
|
Re: Interpreting a hexdump table
I certainly wouldn’t put you off getting the Raspberry Pi, it’s a great computer.
__________________
Frank |
18th Aug 2018, 12:56 pm | #59 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,586
|
Re: Interpreting a hexdump table
Of the various options, it probably boils down practically to these four:
-Learn programming on the computer you already have. -Buy a Raspberry Pi -Buy a BBC Micro:Bit -Buy an Arduino Taking these in order: -On the PC - this is the risk-free option since you already have what you need. As far as programming languages go I would suggest 'Python' which is popular, free, and available for a wide range of platforms. If you originally used BASIC on 80s-era computers, Python has some similarities to BASIC and is quite easy to pick up - plus there are loads of books and online tutorials for Python. Any Python programming skills you learn on the PC can be taken across to other systems such as the Raspberry Pi and the Micro:Bit. The only downside to programming on a PC is that it does not really encourage 'physical computing' - using the PC to sense external situations and respond to / control them, unlike, say, the BBC B which had the very useful 'user port' which could be used for that purpose. The Raspberry Pi is a surprisingly powerful all-purpose compact computer which, like a PC, has keyboard and mouse input and output to a video screen but unlike a PC, also has a physical input / output port just as the BBC B did. So if you envisage making projects with human-friendly user interfaces which can also interact with physical hardware, the Raspberry Pi may be for you. It uses a version of the Linux operating system, which in most cases people probably aren't familiar with before they encounter the Pi and so you would probably be learning about Linux at the same time as you are learning about the Pi. The basic machine comes essentially not working out of the box - you have to flash an SD card (not supplied) with your operating system of choice before the machine will do anything. You can buy kits consisting of a Pi plus a ready prepared SD card and these are usually good value, but don't always have the latest version of the operating system on them. Finally, for initial setup and for most practical use you will need access to a display or TV with an HDMI input. The Pi can output a standard definition picture over composite video, but the definition / readability is quite poor. Nor do you get a nice fat user manual / programming tutorial book with the Pi as you would have done with any eighties computer, so the learning curve in the beginning might seem very daunting. Having said all that, and sounded somewhat negative about them, I own four of the things myself. The Micro:Bit was designed to be handed out to school kids to encourage them to experiment with coding. As such it is very simple to use and its implementation of the Python language includes some powerful short cut functions to make the hardware easy to interact with, so, for example, you can create a scrolling text message on the LED grid display with just two lines of Python (For Micro:Bit) code. My personal recommendation, however, would be to try an Arduino - available in various sub-models, the most popular of which is probably the Arduino Uno. Like the Micro:Bit this is a programmable microprocessor board rather than a 'computer' but it comes with a whole host of prepared 'libraries' of code which make it very easy to do some otherwise fairly complicated things, like outputting text to an Alphanumeric LCD display or interacting with a serial-connected temperature sensor. By making use of such functions in your code, you can go from having an idea to having something up and running really very quickly. In the case of Arduino the primary programming language is 'C' rather than Python. In my opinion 'C' tends to be less easily human-readable than Python or BASIC, but everything else about the Arduino experience makes it worth mastering. Another point in favour of Arduino is the vast number of add on interfaces (or 'Shields', in Arduino speak) which are available, which can allow an Arduino to interface with almost anything. Even without these, the standard Arduino has a good mixture of analogue inputs and digital inputs and outputs for interacting with and controlling other devices. One option I didn't include was that of learning to program microcontrollers such as the PIC or AVR series directly in assembly language - this option undoubtedly gives you the best understanding of how microprocessors work and gives you absolute control over every aspect of the microprocessor's operation, but if you just want to write some code and see complicated things happening relatively quickly, then I think Arduino is a better place for most people to start. Last edited by SiriusHardware; 18th Aug 2018 at 1:02 pm. |
18th Aug 2018, 9:39 pm | #60 |
Nonode
Join Date: May 2007
Location: Redruth, Cornwall, UK.
Posts: 2,580
|
Re: Interpreting a hexdump table
Thanks for all your replies. Graham's comparison between the various options was very helpful and has given me a few ideas. They all seem to have advantages one way or another. I'm now leaning towards purchasing either an Arduino or Raspberry Pi. I like the hardware options for the Arduino system.
My distant (late 1980s/early 1990s) programming experience goes back to when I was doing my Electrical and Electronic Engineering degree at Polytechnic. We started using PASCAL on the soon to be retired BBC B computers. Shortly after, we had some new IBM compatible machines with a 286 processor running Modula 2. Strangely, at the same time, the Communication Engineering course students were using 'C'. I often wondered why 'C' wasn't adopted on our course. I also previously had some experience with BBC BASIC which I always felt comfortable with. Regards Symon. |