UK Vintage Radio Repair and Restoration Powered By Google Custom Search Vintage Radio and TV Service Data

Go Back   UK Vintage Radio Repair and Restoration Discussion Forum > Specific Vintage Equipment > Vintage Computers

Notices

Vintage Computers Any vintage computer systems, calculators, video games etc., but with an emphasis on 1980s and earlier equipment.

Reply
 
Thread Tools
Old 10th Mar 2023, 3:18 pm   #1
Phil__G
Hexode
 
Join Date: Mar 2011
Location: North Yorkshire, UK.
Posts: 490
Default Zen Z80 editor-assembler for the Grant Searle & RC2014mini/micro/classic

Back in the day I used Zen quite a lot and its long been an intention to port it to the Grant Searle Z80 boards. Its entirely memory based so no disk or external storage is used - Zen itself, your source, the symbol table and object code are all stored in RAM making it ideal for these small retro systems.
I had a head start with Neal Crook's Nascom version from which its derived with lots of mods to better suit the hardware. The cassette save/load is replaced with ascii spooling (familiar to anyone who uses BASIC on these simple boards) and I've added an "X" command, after a successful assembly 'X' will output an Intel Hex format file which can be logged or copy/pasted from the Teraterm buffer. This integrates nicely with the monitor's hex-loader so files can be saved and reloaded with ease, and its phase-aware so takes account of LOAD/ORG differences. I had some good news from Spencer, he's been including my Z80 monitor with the smaller RC's since January.
The document is updated and I've included Zen images at 2800H, 3000H, 8400H and 9000H to suit 32k or 56k (64k) systems.
Given enough memory you can of course have Zen reassemble itself at other locations but memory usage takes a bit of forethought,
usually needing blocks of memory shuffling about
I think this is probably a wrap, I wanted Intel Hex output so Zen now does everything I need, so many other projects to pursue...
When I get a mo I'll list/summarize the (many) changes made in porting from Neal's Nascom version.
If anyone's interested its on the Retro/GrantSearle etc page of http://philg.uk
Proper retro coding on a completely self-contained system!
Cheers
Phil
Phil__G is offline   Reply With Quote
Old 10th Mar 2023, 7:15 pm   #2
DavidMS
Tetrode
 
Join Date: Nov 2022
Location: Chesham, Buckinghamshire, UK.
Posts: 94
Default Re: Zen Z80 editor-assembler for the Grant Searle & RC2014mini/micro/classic

Just wondering if you have any thoughts,

I have loaded the ZEN image to run at 2800h on an expanded Elektor Z80 system. The first 2K is a simple home developed monitor, using RST08 for serial output and RST10 for input. I have RAM from 0800-8000h [It runs Grant S's NASCOM basic with no modifications]. However when I fire up ZEN I just get HuH error whatever I type ?
DavidMS is offline   Reply With Quote
Old 10th Mar 2023, 9:29 pm   #3
Phil__G
Hexode
 
Join Date: Mar 2011
Location: North Yorkshire, UK.
Posts: 490
Default Re: Zen Z80 editor-assembler for the Grant Searle & RC2014mini/micro/classic

Upper case?
If you can run Nascom basic then you should be ok with my 'monitor' version David
Phil__G is offline   Reply With Quote
Old 10th Mar 2023, 10:19 pm   #4
DavidMS
Tetrode
 
Join Date: Nov 2022
Location: Chesham, Buckinghamshire, UK.
Posts: 94
Default Re: Zen Z80 editor-assembler for the Grant Searle & RC2014mini/micro/classic

Quote:
Originally Posted by Phil__G View Post
Upper case?
If you can run Nascom basic then you should be ok with my 'monitor' version David
nope checked that when I type W it responded with .Z>

I am beginning to wonder if my hex loader subroutine dislikes larger files, it's while since I wrote it but I suspect I probably do not test it with anything too challenging
DavidMS is offline   Reply With Quote
Old 10th Mar 2023, 10:38 pm   #5
DavidMS
Tetrode
 
Join Date: Nov 2022
Location: Chesham, Buckinghamshire, UK.
Posts: 94
Default Re: Zen Z80 editor-assembler for the Grant Searle & RC2014mini/micro/classic

Could you help me a little with the 'Load' statement
in the .zen example you have

MYZEN: EQU 8400H
SYMSPC:EQU 1800H ;sets SOFP & EOFP
;
; Zen for GS Z80/RC2014 - Phil-G
;
ORG MYZEN
LOAD 03000H ; out of the way
but in the .prn example you have

1 MYZEN: EQU 3000H
2 SYMSPC: EQU 1800H ;sets SOFP & EOFP
3 ;
4 ; Zen for GS Z80/RC2014 - Phil_G
5 ;
6 ORG MYZEN
7 LOAD 3000H

In the latter case should the LOAD be pointing to somewhere away from the ZEN code ?

I don't have RAM above 8000h so cannot try one of the higher complied versions
DavidMS is offline   Reply With Quote
Old 10th Mar 2023, 11:13 pm   #6
Phil__G
Hexode
 
Join Date: Mar 2011
Location: North Yorkshire, UK.
Posts: 490
Default Re: Zen Z80 editor-assembler for the Grant Searle & RC2014mini/micro/classic

in that example its org'd at 8400h, but lets say the Zen we're actually running is also at 8400h, so you need to load the object code somewhere else. The object code is correctly addressed within itself but is physically located at 3000h, miles away from Zen. Jumps, calls, etc are all within 8400h onwards but located down at the LOAD area. To run it, you need to either "x" to get an 8400h intel hex file, or copy the object code from 3000h to 8400h and run ot there. Its all about managing memory whilst still being able to have any origin you like even if it cant physically go there.
In M80 microsoft use ".PHASE" to do the same thing

If you need a specific origin I can do that & post it here?

Edit: Sorry I just re-read the question. The answer is that I did four variants (different load addresses) and the .prn and .zen files are from different runs
Phil__G is offline   Reply With Quote
Old 10th Mar 2023, 11:29 pm   #7
DavidMS
Tetrode
 
Join Date: Nov 2022
Location: Chesham, Buckinghamshire, UK.
Posts: 94
Default Re: Zen Z80 editor-assembler for the Grant Searle & RC2014mini/micro/classic

Quote:
Originally Posted by Phil__G View Post
in that example its org'd at 8400h, but lets say the Zen we're actually running is also at 8400h, so you need to load the object code somewhere else. The object code is correctly addressed within itself but is physically located at 3000h, miles away from Zen. Jumps, calls, etc are all within 8400h onwards but located down at the LOAD area. To run it, you need to either "x" to get an 8400h intel hex file, or copy the object code from 3000h to 8400h and run ot there. Its all about managing memory whilst still being able to have any origin you like even if it cant physically go there.
In M80 microsoft use ".PHASE" to do the same thing

If you need a specific origin I can do that & post it here?

Edit: Sorry I just re-read the question. The answer is that I did four variants (different load addresses) and the .prn and .zen files are from different runs
So doing a number of random checks the code looks correct in my RAN. If I enter 'E' directly on running the code (@3000h) it responds with 1. etc and I can enter 'stuff'. I can get out of entry mode with '.' but from there I get 'Huh' whatever I enter. As far as I can see my RST 10h code is just waiting for a character and then returning it in A which is what you should be expecting. Most baffling. Ideally executing at 1000h would make best use of my RAM but 3000h should work fine as I have RAM upto 8000h. NASCOM Basic sits at the top of my memory map
DavidMS is offline   Reply With Quote
Old 11th Mar 2023, 12:31 am   #8
Phil__G
Hexode
 
Join Date: Mar 2011
Location: North Yorkshire, UK.
Posts: 490
Default Re: Zen Z80 editor-assembler for the Grant Searle & RC2014mini/micro/classic

Dunno David, try this, its at 1000h
"H" command should show 2800H
I cant try it as thats the 8k rom on a Grante Searle
Attached Files
File Type: zip Zen_1000-1E3D.zip (4.7 KB, 2 views)

Last edited by Phil__G; 11th Mar 2023 at 12:39 am.
Phil__G is offline   Reply With Quote
Old 11th Mar 2023, 6:49 am   #9
DavidMS
Tetrode
 
Join Date: Nov 2022
Location: Chesham, Buckinghamshire, UK.
Posts: 94
Default Re: Zen Z80 editor-assembler for the Grant Searle & RC2014mini/micro/classic

Quote:
Originally Posted by Phil__G View Post
Dunno David, try this, its at 1000h
"H" command should show 2800H
I cant try it as thats the 8k rom on a Grante Searle
Thanks I am sure it is my end, the first instruction works but after then it just stops accepting anything as a valid command. It must be something getting corrupted in my hex loader s/w. Will spend some time on that then come back to ZEN
DavidMS is offline   Reply With Quote
Old 11th Mar 2023, 7:13 am   #10
DavidMS
Tetrode
 
Join Date: Nov 2022
Location: Chesham, Buckinghamshire, UK.
Posts: 94
Default Re: Zen Z80 editor-assembler for the Grant Searle & RC2014mini/micro/classic

I think I may have sorted out the problem - my terminal program was emulating CR LF, turning that off seems to have fixed things. Sadly I need to attend to family life but hopefully will able to have a bit more of a play later
DavidMS is offline   Reply With Quote
Old 14th Mar 2023, 12:32 am   #11
Phil__G
Hexode
 
Join Date: Mar 2011
Location: North Yorkshire, UK.
Posts: 490
Default Re: Zen Z80 editor-assembler for the Grant Searle & RC2014mini/micro/classic

A bit of a demo:
https://youtu.be/DvflLeOuHK0
Phil__G is offline   Reply With Quote
Old 14th Mar 2023, 7:05 pm   #12
Timbucus
Octode
 
Join Date: Mar 2019
Location: Barry, Vale of Glamorgan, Wales, UK.
Posts: 1,267
Default Re: Zen Z80 editor-assembler for the Grant Searle & RC2014mini/micro/classic

Nice demo just watched it as it appeared in my feed - I must try it soon.
Timbucus is offline   Reply With Quote
Old 18th Mar 2023, 9:15 pm   #13
Phil__G
Hexode
 
Join Date: Mar 2011
Location: North Yorkshire, UK.
Posts: 490
Default Re: Zen Z80 editor-assembler for the Grant Searle & RC2014mini/micro/classic

Sorry about this, I've just updated the Zen zipfile again. I've been using Zen itself to develop Zen and in large source files was frustrated by the lack of a 'goto linenumber' command in the source editor. Having to do 'T' for Top then 'D#' for down n lines eventually got to me. Consequently I've added a 'G' command to the editor, for example G67 will make line 67 the current line. Remember though that if you follow this with an 'E' command, that enters text before the current line, as it always did.
Apologies, I do think this is a wrap now. The Zip on http://philg.uk includes Zens at all the previous load addresses, including David's at 1000h.
(Obviously the one you choose has to match your hardware). It also has an updated doc file & readme with the new and the modified commands listed.

On a different tack, does anyone by chance have this PCW mag or a scan please?
(Colour Genie 'Zen' review)
Attached Thumbnails
Click image for larger version

Name:	pcnw.jpg
Views:	20
Size:	133.2 KB
ID:	275283  
Phil__G is offline   Reply With Quote
Old 19th Mar 2023, 8:13 am   #14
DavidMS
Tetrode
 
Join Date: Nov 2022
Location: Chesham, Buckinghamshire, UK.
Posts: 94
Default Re: Zen Z80 editor-assembler for the Grant Searle & RC2014mini/micro/classic

Excellent timing, I have just hacked my 32KRAM + 8KROM board to take the bigger 28C256. So I can now have Grant Searle's NASCOM Basic and ZEN resident. Will use the Z80 block load to move a binary copy of ZEN from ROM down to RAM @1000h.

This mornings pain has been generating the binary, after some searching found a somewhat ancient application called srecord that will take almost anything in and general almost anything out. After dusting off the memory cells to work from the DOS prompt have got the binary which I can now 'glue' on to the basic binary and program the 28C256.

I know it is a long way around but my memory board is not designed to allow me to in situ program the EERPOM - it was originally design to take an EPROM
Attached Thumbnails
Click image for larger version

Name:	image0 (12).jpeg
Views:	16
Size:	128.8 KB
ID:	275288  
DavidMS is offline   Reply With Quote
Old 19th Mar 2023, 11:41 am   #15
60 oldjohn
Dekatron
 
Join Date: Dec 2004
Location: East Yorkshire, UK.
Posts: 3,586
Default Re: Zen Z80 editor-assembler for the Grant Searle & RC2014mini/micro/classic

Are these early versions of the chip used?

John.
Attached Thumbnails
Click image for larger version

Name:	SAM_2720.jpg
Views:	23
Size:	65.3 KB
ID:	275294  
__________________
My favourite text message "I'll be there in five minutes, if not read again"
60 oldjohn is online now   Reply With Quote
Old 19th Mar 2023, 12:49 pm   #16
ortek_service
Heptode
 
ortek_service's Avatar
 
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 832
Default Re: Zen Z80 editor-assembler for the Grant Searle & RC2014mini/micro/classic

Quote:
Originally Posted by 60 oldjohn View Post
Are these early versions of the chip used?

John.
These appear to actually be the Z80-SIO (Serial Input Output) Peripheral IC, rather than the CPU. And made by SGS-ATES, rather than original Zilog, so a licensed 2nd source. There's a picture of an actual Z80-CPU, made by SGS-ATES in the same-style ceramic package as this one, shown here: https://www.cpu-world.com/CPUs/Z80/MANUF-SGS-Ates.html

They could be early prototypes ones, but may also be just the 'better' (temperature-range? / Mil?) specification ceramic-package version (which differs quite a lot between different manufacturers) - as no date-codes, only batch numbers on it?
ortek_service is offline   Reply With Quote
Old 19th Mar 2023, 8:36 pm   #17
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 9,735
Default Re: Zen Z80 editor-assembler for the Grant Searle & RC2014mini/micro/classic

To continue the warning there are a number of other Z80 'family' ICs not to be mistaken for actual Z80s, such as the Z80-PIO and Z80-DART. There is also a Z80-CTC but that is usually in a smaller package - 24 or 28 pin, can't remember which.

Some manufacturers, notably NEC, made their own clones of the Z80 family ICs whose numbers bear little resemblance to those of the original parts, so far example an NEC uPD780 is a pin compatible clone of the Z80.
SiriusHardware is online now   Reply With Quote
Old 19th Mar 2023, 9:11 pm   #18
60 oldjohn
Dekatron
 
Join Date: Dec 2004
Location: East Yorkshire, UK.
Posts: 3,586
Default Re: Zen Z80 editor-assembler for the Grant Searle & RC2014mini/micro/classic

Thank you for the two above replies, I thought with being ceramic they were the first version, I have been proved wrong , yet again.

John.
__________________
My favourite text message "I'll be there in five minutes, if not read again"
60 oldjohn is online now   Reply With Quote
Old 19th Mar 2023, 10:36 pm   #19
Phil__G
Hexode
 
Join Date: Mar 2011
Location: North Yorkshire, UK.
Posts: 490
Default Re: Zen Z80 editor-assembler for the Grant Searle & RC2014mini/micro/classic

Those chips are jewellery John, things of beauty! ...and not without value
Phil__G is offline   Reply With Quote
Old 20th Mar 2023, 6:57 am   #20
ortek_service
Heptode
 
ortek_service's Avatar
 
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 832
Default Re: Zen Z80 editor-assembler for the Grant Searle & RC2014mini/micro/classic

Yes, and the Z80-SIO is probably much-rarer than the CPU - as not many Z80 systems had a Z80-SIO IC fitted as standard (sometimes opting for an 8251 etc, if only Asynchronous-serial was required - like in the Tatung Einstein - Maybe it was a bit cheaper?)

And SGS-ATES Z80 family IC's probably aren't that common (compared with more-usually encountered Zilog, NEC and Mostek MK3880 etc ones - especially in a capped-die white-ceramic package.
It seems there are CPU-Collectors, who will pay 100 for a white-ceramic (Rockwell at least?) 6502 CPU. But not sure if they also like to collect the associated peripheral IC's (especially as less-common).

The Z80-SIO may still be being made, but might now be only in higher-seed CMOS version, like the CPU is available in.
ortek_service is offline   Reply With Quote
Reply

Thread Tools



All times are GMT. The time now is 2:29 pm.


All information and advice on this forum is subject to the WARNING AND DISCLAIMER located at https://www.vintage-radio.net/rules.html.
Failure to heed this warning may result in death or serious injury to yourself and/or others.


Powered by vBulletin®
Copyright ©2000 - 2023, vBulletin Solutions, Inc.
Copyright ©2002 - 2023, Paul Stenning.