RetroBrew Computers Forum
Discussion forum for the RetroBrew Computers community.

Home » RBC Forums » General Discussion » Interested in a Z280 SBC (Z280 SBC retrobrew (CPU280 Revival))  () 1 Vote
Re: 8080 to Z80 translation [message #5527 is a reply to message #5524] Thu, 15 November 2018 14:28 Go to previous messageGo to next message
agn453 is currently offline  agn453
Messages: 51
Registered: June 2018
Location: Newcastle, NSW, Australia
Member
My quick-and-dirty TurboPascal program to lowercase assembly language source (and leave comments alone) is attached. The only thing to watch for
is for single quotes in text strings - like DEFB "Can't open file" - or EX AF AF' - which may cause comments to be lowercased too.

Tony
  • Attachment: LC.PAS
    (Size: 1.26KB, Downloaded 23 times)


--
Tony Nicholson
Re: Interested in a Z280 SBC [message #5528 is a reply to message #5525] Thu, 15 November 2018 15:21 Go to previous messageGo to next message
geowar1 is currently offline  geowar1
Messages: 39
Registered: October 2018
Member
yeah, that works... unfortunately it doesn't help with non-COM (or SUB) files... for example all those <WS*.OVR> files... You can tell WS4 to always get them from whatever drive they're on... but not which user area.
Weirdly HELP.com can find HELP.HLP (and *.HLP)... but a lot of other programs can't find their files unless they're in the same user area.
Re: Interested in a Z280 SBC [message #5529 is a reply to message #5528] Thu, 15 November 2018 15:36 Go to previous messageGo to next message
agn453 is currently offline  agn453
Messages: 51
Registered: June 2018
Location: Newcastle, NSW, Australia
Member
geowar1 wrote on Fri, 16 November 2018 10:21
yeah, that works... unfortunately it doesn't help with non-COM (or SUB) files... for example all those <WS*.OVR> files... You can tell WS4 to always get them from whatever drive they're on... but not which user area.
Weirdly HELP.com can find HELP.HLP (and *.HLP)... but a lot of other programs can't find their files unless they're in the same user area.


Try the ZCPM3 BDOS.

I use this feature when working in different user areas - for example, the majority of my .COM and .SUB files - including Wordstar 3.30g and it's overlays reside on disk A in user 0 - each of them marked with the SYS and RO attribute. They can be found using the search path (set-up with SETDEF in the PROFILE.SUB on boot) or (for those that don't use a search path) in user 0 of the current drive. WordStar has a WINSTALL option to specify which drive the overlays are on.

Tony


--
Tony Nicholson
Re: Interested in a Z280 SBC [message #5530 is a reply to message #5518] Thu, 15 November 2018 17:10 Go to previous messageGo to next message
geowar1 is currently offline  geowar1
Messages: 39
Registered: October 2018
Member
I wasn't aware that DU had a CP/M Plus version... not to say you couldn't boot into CP/M 2.2 to do what you did...
OTOH I did find the source to ZAP modified to work on CP/M Plus... except that it had a bug where he didn't handle more than 127 sectors per track (and z280rz uses 256 spt).
If you're interested I can post it (w/sources).

Next I want to write a "mount" command that can change the system track offsets on any but the boot drive so I can remap any logical drive (except A:) to any (64 track) partition on the CF card.

Note: while playing with your BIOS (and rebuilding, and rebuilding, and...Wink I decided to write a "IFNT" tool. Sets the CP/M Plus BDOS FUNCTION 108: GET/SET PROGRAM RETURN CODE appropriately based on relative file update time(stamps).
So your BANKBIOS.SUB script can do things like this:

ifnt scb.mac scb.rel
:ZSM4 SCB,SCB=SCB/s8/u

ifnt bioskrnl.mac bioskrnl.rel
:ZSM4 BIOSKRNL,BIOSKRNL=BIOSKRNL/s8/u

ifnt idehd.mac idehd.rel
:ZSM4 IDEHD,IDEHD=IDEHD/s8/u

ifnt ramdisk.mac ramdisk.rel
:ZSM4 RAMDISK,RAMDISK=RAMDISK/s8/u

ifnt clock.mac clock.rel
:ZSM4 CLOCK,CLOCK=CLOCK/s8/u

ifnt chario.mac chario.rel
:ZSM4 CHARIO,CHARIO=CHARIO/s8/u

ifnt biosdbg.mac biosdbg.rel
:ZSM4 BIOSDBG,BIOSDBG=BIOSDBG/s8/u

ifnt BIOSKRNL.rel,BIOSDBG.rel,CHARIO.rel,CLOCK.rel,SCB.rel,RAMDISK.rel,IDEHD.rel BNKBIOS3.spr
:LINK BNKBIOS3[B]=BIOSKRNL,BIOSDBG,CHARIO,CLOCK,SCB,RAMDISK,IDEHD


Works pretty well... (except that CP/M Plus time stamps only have one minute resolution... so sometimes something that's "newer" actually has the same date...]

Why didn't they use "seconds since 1977" instead of "days since 1977 plus hh:mm"? (no 32-bit divide?Wink That would have lasted 136 years (or 116 years longer than CP/M did). As-is the file stamps are good for ≈179 years... but no seconds. Sad
Re: Interested in a Z280 SBC [message #5531 is a reply to message #5529] Thu, 15 November 2018 17:13 Go to previous messageGo to next message
geowar1 is currently offline  geowar1
Messages: 39
Registered: October 2018
Member
Yeah, that's what I did (except everything on drive B:).
I used NZCOM right up until Joe Wright retired and moved back east (I helped him pack up)... but my zrdos foo has fled... :(

Will the ZCPM3 BDOS give me a command history longer than one entry?
Re: 8080 to Z80 translation [message #5532 is a reply to message #5523] Thu, 15 November 2018 17:16 Go to previous messageGo to next message
geowar1 is currently offline  geowar1
Messages: 39
Registered: October 2018
Member
Even back when I was doing more assembly programming (30+ years ago!Wink I exclusively used lower case... I've never liked how Micro$oft & Intel like to YELL (UPPERCASE) everything.
Still beats toggling it in via the front panel (like on the PDP-11)... ;-)
Re: Interested in a Z280 SBC [message #5533 is a reply to message #5531] Thu, 15 November 2018 17:27 Go to previous messageGo to next message
agn453 is currently offline  agn453
Messages: 51
Registered: June 2018
Location: Newcastle, NSW, Australia
Member
geowar1 wrote on Fri, 16 November 2018 12:13
Will the ZCPM3 BDOS give me a command history longer than one entry?


Yep - Wordstar like cursor keys. CTRL-X and CTRL-E for command history up/down... CTRL-Y (delete line) replaces the CP/M CTRL-U.. CTRL-S CTRL-D cursor left and right etc.

Tony


--
Tony Nicholson
Re: Interested in a Z280 SBC [message #5534 is a reply to message #5533] Thu, 15 November 2018 17:59 Go to previous messageGo to next message
geowar1 is currently offline  geowar1
Messages: 39
Registered: October 2018
Member
Know of any documentation anywhere? Only thing I can find via google is some DDJ articles and < http://elitebbs.dynu.net/commodore/commodore/Commodore%20Fil e%20Areas/8-cpm/zcpm3.html>... lots of verbiage... no actual information.

Re: 8080 to Z80 translation [message #5535 is a reply to message #5527] Thu, 15 November 2018 18:01 Go to previous messageGo to next message
geowar1 is currently offline  geowar1
Messages: 39
Registered: October 2018
Member
BTW: It annoys me that you can't use "ex hl,de" (or I guess "ex af',af" ether).
Re: Interested in a Z280 SBC [message #5536 is a reply to message #5534] Thu, 15 November 2018 18:33 Go to previous messageGo to next message
agn453 is currently offline  agn453
Messages: 51
Registered: June 2018
Location: Newcastle, NSW, Australia
Member
For a summary of Simeon Cran's ZPM3 BDOS features, please see the zpm3s.arc file I attached to my recent message.

It contains the disassembled source code (that Hector graciously fixed ZSM4 so it would build without throwing errors due to long symbols).

In it you will also find a ZPM3.TXT and a ZPM3FIX.TXT file that will give some help.

This copy came from Tesseract RCPM+ Volume 93 and was updated on 24-Feb-2015 by Jon Saxton. Jon changed the key mapping and command history to be "more intuitive" - so be sure to read the "fix" file.

Tony


--
Tony Nicholson
Re: Interested in a Z280 SBC [message #5537 is a reply to message #5526] Fri, 16 November 2018 01:25 Go to previous messageGo to next message
hperaza is currently offline  hperaza
Messages: 55
Registered: March 2017
Member
agn453 wrote on Thu, 15 November 2018 13:45
Having thought about this again I've elected to use 2048 directory entries. Going higher would mean I'd need to use a block size of 8192 (BLS) and I'd rather stick with 4096 so the small files aren't chewing up a bigger allocation.

You're right! Just checked the P112 BIOS and I can see I settled on 2048 entries as well probably for the same reason.

Quote:
Yet another aside - I noticed reference to RSX180 in your ZSM4 distribution. A DuckDuckGo search seems to only have a reference to your P112 site for a disk image (for the P112). Is this the PDP-11 RSX system migrated to a Z180? Over 40 years ago (around the time I was getting into microcomputers) I spent too much time after work hours tinkering on RSX-11M. Is the source code available? If you'd rather respond privately - use Tony dot Nicholson at computer dot org to reach me.

It is a system written from scratch, originally for the 8080. The design and look-and-feel morphed a few times before ending up like RSX-11M (my favorite OS of that era).

The few people who are testing the system also download ZSM4 from this forum, thus the task image file is now being included in the package. I'm working on a native UZI180 version of ZSM4 as well, with unix-style option switches, but because the assembler runs nicely under the embedded CP/M emulator it didn't get high priority.

As RSX180 is a bit off-topic here (except perhaps that a Z280 version is in progress), I'll give you more details via PM.

[Updated on: Fri, 16 November 2018 03:17] by Moderator

Report message to a moderator

Re: Interested in a Z280 SBC [message #5538 is a reply to message #5530] Fri, 16 November 2018 03:35 Go to previous messageGo to next message
agn453 is currently offline  agn453
Messages: 51
Registered: June 2018
Location: Newcastle, NSW, Australia
Member
geowar1 wrote on Fri, 16 November 2018 12:10
Note: while playing with your BIOS (and rebuilding, and rebuilding, and...Wink I decided to write a "IFNT" tool. Sets the CP/M Plus BDOS FUNCTION 108: GET/SET PROGRAM RETURN CODE appropriately based on relative file update time(stamps).
So your BANKBIOS.SUB script can do things like this:

ifnt scb.mac scb.rel
:ZSM4 SCB,SCB=SCB/s8/u

ifnt bioskrnl.mac bioskrnl.rel
:ZSM4 BIOSKRNL,BIOSKRNL=BIOSKRNL/s8/u

..snip..



I have used a CP/M version of 'make' that does a similar thing. My build drive didn't have time-stamping enabled until recently - and I wanted to be certain that each build was clean. This is particularly important after changing something in the configuration library - e.g. CONFBANK.LIB.

I'd be interested in a copy of your IFNT if you're happy to share it.

Tony





--
Tony Nicholson
Re: Interested in a Z280 SBC [message #5539 is a reply to message #5530] Fri, 16 November 2018 03:52 Go to previous messageGo to next message
agn453 is currently offline  agn453
Messages: 51
Registered: June 2018
Location: Newcastle, NSW, Australia
Member
geowar1 wrote on Fri, 16 November 2018 12:10

Why didn't they use "seconds since 1977" instead of "days since 1977 plus hh:mm"? (no 32-bit divide?Wink That would have lasted 136 years (or 116 years longer than CP/M did). As-is the file stamps are good for ≈179 years... but no seconds. Sad


Oops - I cut this from my previous reply when I wanted to comment.

CP/M-Plus *does* return the seconds as a BCD value in the A register after a get time BDOS call (function code 105).

Tony


--
Tony Nicholson
Re: Interested in a Z280 SBC [message #5541 is a reply to message #5539] Fri, 16 November 2018 05:13 Go to previous messageGo to next message
geowar1 is currently offline  geowar1
Messages: 39
Registered: October 2018
Member
That's for the BDOS/BIOS time functions... not file time stamps; they only return days since 1977 and TOD in HH:MM (no seconds).
Re: Interested in a Z280 SBC [message #5543 is a reply to message #5538] Fri, 16 November 2018 05:19 Go to previous messageGo to next message
geowar1 is currently offline  geowar1
Messages: 39
Registered: October 2018
Member
Quote:
I have used a CP/M version of 'make' that does a similar thing. My build drive didn't have time-stamping enabled until recently - and I wanted to be certain that each build was clean. This is particularly important after changing something in the configuration library - e.g. CONFBANK.LIB.

I'd be interested in a copy of your IFNT if you're happy to share it.


Yeah, I was aiming for "make" like behavior... but wasn't ready to re-invent that wheel... ;-)
I'm not at the machine that's connected to the z280rc right now... but as soon as I am I'll post those files.
Re: Interested in a Z280 SBC [message #5544 is a reply to message #5538] Fri, 16 November 2018 08:58 Go to previous messageGo to next message
geowar1 is currently offline  geowar1
Messages: 39
Registered: October 2018
Member
I've attached three files (zipped together): IFNT.Z80, PRINT$.MAC and CPMUTIL.Z80. If you want you could put the parts you use of the 2nd two files in the 1st to eliminate the extras... (CPMUTIL.Z80 has turned into a "kitchen sink" of somewhat useful CP/M utility functions. YOMV... ;-)
  • Attachment: Archive.zip
    (Size: 7.65KB, Downloaded 23 times)
Re: Interested in a Z280 SBC [message #5547 is a reply to message #5529] Fri, 16 November 2018 20:36 Go to previous messageGo to next message
geowar1 is currently offline  geowar1
Messages: 39
Registered: October 2018
Member
Quick note: I noticed you said that you're using WordStar 3.x... It had problems with my 132x66 monitor (terminal emulator on host machine)... so I tried ws 4.x and it seems to be working just fine.
Re: Interested in a Z280 SBC [message #5632 is a reply to message #5547] Wed, 28 November 2018 22:23 Go to previous messageGo to next message
agn453 is currently offline  agn453
Messages: 51
Registered: June 2018
Location: Newcastle, NSW, Australia
Member
Some more tinkering today with my CP/M-Plus BIOS for the Z280RC.

I've rearranged the memory mapping for a banked system so that the transient program area and common memory area are contiguous - see the commentary in the BIOSKRNL.MAC source file.

This means that the DMA and MMU options for memory moves between banks both now work correctly.

I've also tweaked common memory usage to give a 61KB TPA (Banked system with eight 8MB drives and RamDisk) and replaced Bill's CP/M loader with my LDRBIOS version.

I still need some more TPA to compile one of the larger UZI280 modules though...

TinyZZ Monitor v0.99 6/9/18


>boot CP/M
1--User Apps,
2--CP/M2.2,
3--CP/M3: 3 press Return to execute command

Z280RC CP/M 3 Loader 29-Nov-2018
Built with Cache Cont.-DMA
CompactFlash A:

CPMLDR3 - CP/M V3.0 Loader
Copyright (C) 1982, Digital Research

 RESBIOS3 SPR  FA00  0600
 BNKBIOS3 SPR  B600  2A00
 RESBDOS3 SPR  F400  0600
 BNKBDOS3 SPR  8800  2E00

 61K TPA

Z280RC Banked BIOS 29-Nov-2018
Built with Cache MOVE-w/DMA BigDirE-H Cont.-DMA Alloc-CSV
Drives CompactFlash A:..H: RamDisk M:

C>; C:PROFILE.SUB
C>a:setdef * d: h: a: [order=(com,sub) display page uk]



You can fetch the lastest sources from https://github.com/agn453/Z280RC

There's a ZIP file link in the description README.md that will fetch only the files for my bios280 and not the whole GitHub repository.

Tony


--
Tony Nicholson

[Updated on: Thu, 29 November 2018 03:35]

Report message to a moderator

Re: Interested in a Z280 SBC [message #5637 is a reply to message #5632] Thu, 29 November 2018 07:05 Go to previous messageGo to next message
lowen is currently offline  lowen
Messages: 190
Registered: August 2016
Location: Western NC USA
Senior Member
agn453 wrote on Thu, 29 November 2018 01:23
...
I still need some more TPA to compile one of the larger UZI280 modules though...

...
 61K TPA
...


...


Since UZI280 was developed for the CPU280, I would suspect that you may need the full 62K TPA that the CPU280's CP/M Plus provides. You're getting really close, and watching the progress has been rather rewarding for me!


--
Bughlt: Sckmud
Shut her down Scotty, she's sucking mud again!
Re: Interested in a Z280 SBC [message #5640 is a reply to message #1189] Thu, 29 November 2018 08:29 Go to previous messageGo to next message
stefan_n is currently offline  stefan_n
Messages: 11
Registered: June 2018
Junior Member
Alternatively you can split the file in question. I had to do that with some files even with a 62K TPA.
Re: Interested in a Z280 SBC [message #5644 is a reply to message #5640] Thu, 29 November 2018 15:29 Go to previous messageGo to next message
agn453 is currently offline  agn453
Messages: 51
Registered: June 2018
Location: Newcastle, NSW, Australia
Member
stefan_n wrote on Fri, 30 November 2018 03:29
Alternatively you can split the file in question. I had to do that with some files even with a 62K TPA.


I've already tried this Stefan.

I extracted the execve routine from scall2.c into a file all by itself (with appropriate header includes). HiTech C's OPTIM can't cope -

E>c280 -v -c -o2 scall4.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: SCALL4.C E:$CTMP1.$$$
0:A:P1 E:$CTMP1.$$$ E:$CTMP2.$$$ E:$CTMP3.$$$
SCALL4.C: _execve()
   134:     p = find_zombie2();
                              ^ illegal conversion of integer to pointer (warning)
                              ^ find_zombie2() declared implicit int (warning)
   214:     datalen = dataptr;
                             ^ illegal conversion of pointer to integer (warning)
   310:                 p=make_zombie();
                                       ^ illegal conversion of integer to pointer (warning)
                                       ^ make_zombie() declared implicit int (warning)
   347:     doexec((int16 *)(ub.u_d.u_isp = nenvp - 2));
            illegal conversion between pointer types ^  (warning)
0:A:CGEN E:$CTMP2.$$$ E:$CTMP1.$$$
0:A:OPTIM E:$CTMP1.$$$ E:$CTMP2.$$$
optim: Out of memory in __execve
ERA E:$CTMP1.$$$
ERA E:$CTMP2.$$$
ERA E:$CTMP3.$$$
ERA E:$$EXEC.$$$

E>


I tried using the RunCPM emulator with a 64K TPA on my Mac mini and it just spins cpu (perhaps there's Z280 code in the C280 compiler or OPTIMH parts of HiTech C for the Z280 that the emulator can't cope with).

Tony


--
Tony Nicholson

[Updated on: Thu, 29 November 2018 15:30]

Report message to a moderator

Re: Interested in a Z280 SBC [message #5645 is a reply to message #5644] Thu, 29 November 2018 15:48 Go to previous messageGo to next message
stefan_n is currently offline  stefan_n
Messages: 11
Registered: June 2018
Junior Member
Oh execve(Wink on its own does still not fit, wow... but only 6 warnings ;-) i always had been to lazy to type all the explizit casting.

Yes C280.com and Optimh.com are compiled by me with Z280 optimization on and linked with my Z280 version of the C-lib. Sources for both files are available i guess. The other compiler related files are all original HiTech Z80 versions.
Re: Interested in a Z280 SBC [message #5646 is a reply to message #5645] Thu, 29 November 2018 16:42 Go to previous messageGo to next message
agn453 is currently offline  agn453
Messages: 51
Registered: June 2018
Location: Newcastle, NSW, Australia
Member
stefan_n wrote on Fri, 30 November 2018 10:48
Yes C280.com and Optimh.com are compiled by me with Z280 optimization on and linked with my Z280 version of the C-lib. Sources for both files are available i guess. The other compiler related files are all original HiTech Z80 versions.


I'm using an updated version of HiTech C V3.09A from Tesseract Volume 91 (a release compiled by Jon Saxton in May 2014 with changes by John Elliot to fix an memset bug, wildcard commandline expansion as well as CP/M-Plus enhancements). Perhaps these fixes have reduced memory availability. I'll go looking for an older release and try it (a long time ago I think this was on the OAK or SIMTEL archives). The version of HiTech C I purchased many moons ago is too old - V1.3.

If anyone knows where these Z280 sources of C-lib etc are.. I'd like to know!

Tony


--
Tony Nicholson
Re: Interested in a Z280 SBC [message #5647 is a reply to message #5646] Thu, 29 November 2018 19:37 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 405
Registered: March 2017
Location: New Mexico, USA
Senior Member
You may also want to try version 4.11 of Hitech C which was released into public domain a couple months ago.
https://www.retrobrewcomputers.org/forum/index.php?t=msg& ;th=331&start=0&
Bill
Re: Interested in a Z280 SBC [message #5648 is a reply to message #5647] Thu, 29 November 2018 23:19 Go to previous messageGo to next message
agn453 is currently offline  agn453
Messages: 51
Registered: June 2018
Location: Newcastle, NSW, Australia
Member
plasmo wrote on Fri, 30 November 2018 14:37
You may also want to try version 4.11 of Hitech C which was released into public domain a couple months ago.


I've got this installed in a virtualbox MS-DOS 6.22 instance under macOS.

However, what I'm trying to do is use the Z280 optimiser (OPTIMH.COM) and Z280 modified compiler front-end (C280.COM). The source-code for OPTIMH.C is included in the uzi_112_kernel-src_MIT.zip distribution, and the Z280 versions of the HiTech C object libraries LIB280C.LIB and LIB280F.LIB were found in the older uzi-102.arc - but not the source-code to the C280 compiler front-end or the library routines. The cross-compiler under MS-DOS will need to be coaxed to produce Z280-binaries. I can't run the Z280 binaries under a Z80 emulator either - hence I'm attempting this on the real thing(TM).

Tony


--
Tony Nicholson
Re: Interested in a Z280 SBC [message #5650 is a reply to message #5646] Fri, 30 November 2018 03:52 Go to previous messageGo to next message
stefan_n is currently offline  stefan_n
Messages: 11
Registered: June 2018
Junior Member
[quote title=agn453 wrote on Thu, 29 November 2018 16:42]stefan_n wrote on Fri, 30 November 2018 10:48

If anyone knows where these Z280 sources of C-lib etc are.. I'd like to know!


It seems the only place is my old CPU280 machine. I try to locate it (the worst part, as i have no clue where i put it) and hopefully it is still operational and the sources are on one of the CPM partitions.
Re: Interested in a Z280 SBC [message #5653 is a reply to message #5646] Fri, 30 November 2018 05:50 Go to previous messageGo to next message
stefan_n is currently offline  stefan_n
Messages: 11
Registered: June 2018
Junior Member
agn453 wrote on Thu, 29 November 2018 16:42

I'm using an updated version of HiTech C V3.09A from Tesseract Volume 91 (a release compiled by Jon Saxton in May 2014 ...


Thats interesting. Does it mean the sources still exist and Jon has access to them? I was told by HiTech, a long time ago, that the sources for the Z80 compiler got lost.
Re: Interested in a Z280 SBC [message #5665 is a reply to message #5653] Fri, 30 November 2018 14:35 Go to previous messageGo to next message
agn453 is currently offline  agn453
Messages: 51
Registered: June 2018
Location: Newcastle, NSW, Australia
Member
stefan_n wrote on Sat, 01 December 2018 00:50
agn453 wrote on Thu, 29 November 2018 16:42

I'm using an updated version of HiTech C V3.09A from Tesseract Volume 91 (a release compiled by Jon Saxton in May 2014 ...


Thats interesting. Does it mean the sources still exist and Jon has access to them? I was told by HiTech, a long time ago, that the sources for the Z80 compiler got lost.


I've just confirmed the HiTech C binaries for the core Z80 compiler bits (CGEN.COM, CPP.COM, CREF.COM, DEBUG.COM, LIBR.COM, LIN[KQ].COM, OPTIM.COM, P1.COM and ZAS.COM) are identical for the original released V3.09 (taken from my WalnutCreek CD-ROM copy of the SIMTEL archive) and Tesseract versions. The main changes are with the library routines (for which source-code is provided).

Unfortunately Jon Saxton died from cancer back in June 2015. His son is maintaining the Tesseract triton web site at http://www.triton.vg/TesseractRCPM+Catalog.html but sadly various mirrors etc are being lost from the Internet as time passes.

Tony


--
Tony Nicholson

[Updated on: Fri, 30 November 2018 14:38]

Report message to a moderator

Re: Interested in a Z280 SBC [message #5745 is a reply to message #5665] Sat, 15 December 2018 05:23 Go to previous messageGo to next message
agn453 is currently offline  agn453
Messages: 51
Registered: June 2018
Location: Newcastle, NSW, Australia
Member
It's late at night here in Australia - but I've just managed to boot up UZI280 on Bill Shen's Z280RC board.

E>bootuzi
E:BOOTUZI  COM

UZI280 is (c) Copyright (1990-96) by Stefan Nitschke and Doug Braun

boot: 0
init: /usr/adm/wtmp: Bad file number
UZI280 version 1.12
login: root
%ls -la
total 12
rwxrwxrwx   9 root          512 Apr 19     1992 ./
rwxrwxrwx   9 root          512 Apr 19     1992 ../
rwxrwxrwx   2 root          512 Apr 19     1992 Tapes/
rwxrwxrwx   2 root          512 Apr 19     1992 bin/
rwxrwxrwx   2 root          512 Apr 19     1992 dev/
rwxrwxrwx   2 root          512 Apr 19     1992 etc/
rwxr-xr-x   1 root         9088 Apr 19     1992 init*
rwxrwxrwx   2 root          512 Apr 19     1992 usr/
%cd bin
%ls -la
total 260
rwxrwxrwx   2 root          512 Apr 19     1992 ./
rwxrwxrwx   9 root          512 Apr 19     1992 ../
rwxr-xr-x   1 root        83200 Apr 19     1992 clam*
rwxr-xr-x   1 root         8704 Apr 19     1992 kill*
rwxr-xr-x   1 root        10880 Apr 19     1992 ln*
rwxr-xr-x   1 root         9728 Apr 19     1992 login*
rwxr-xr-x   1 root        16512 Apr 19     1992 ls*
rwxr-xr-x   1 root         8064 Apr 19     1992 mkdir*
rwxr-xr-x   1 root         8192 Apr 19     1992 mount*
rwxr-xr-x   1 root         9600 Apr 19     1992 ps*
rwxr-xr-x   1 root        10752 Apr 19     1992 rm*
rwxr-xr-x   1 root         8576 Apr 19     1992 rmdir*
rwxr-xr-x   1 root         4736 Apr 19     1992 setuart*
rwxr-xr-x   1 root        31104 Apr 19     1992 sh*
rwxr-xr-x   1 root          768 Apr 19     1992 sync*
rwxr-xr-x   1 root        30080 Apr 19     1992 tar*
rwxr-xr-x   1 root         4224 Apr 19     1992 touch*
rwxr-xr-x   1 root         5888 Apr 19     1992 umount*
rwxr-xr-x   1 root        14592 Apr 19     1992 uncompress*
%cd ..
%mkdir /tmp
%cd /tmp
%ls -la >t.tmp
%ls -la
total 1
rwxrwxrwx   2 root          512 Dec 11 23:59:58 ./
rwxrwxrwx  10 root          512 Dec 11 23:59:58 ../
rw-rw-rw-   1 root          165 Dec 11 23:59:58 t.tmp
%sync
%sync
%sync


There's still a lot of polishing to do - and loading of additional binaries etc.

You'll find my modified source-code up now on my GitHub repository at https://github.com/agn453/Z280RC

Look in the system/uzi280-kernel and system/uzi280-xutils folder where you'll find UZIKERNL.LBR and UZIXUTIL.LBR libraries containing the sources (that you can XMODEM download and extract with a CP/M library utility like NULU.COM).

Here's a build log and boot transcript... Enjoy!

Tony


E>date
A:DATE     COM
Sat 15/12/2018 22:17:28
E>make
E:MAKE     COM
   c280 -v -c data.c
   c280 -v -c -o2 machdep.c
   c280 -v -c machasm.c
   c280 -v -c newuput.c
   c280 -v -c -o2 process.c
   c280 -v -c procasm.c
   c280 -v -c -o2 filesys.c
   c280 -v -c -o2 scall1.c
   c280 -v -c -o2 scall2.c
   c280 -v -c -o2 scall3.c
   c280 -v -c scall4.c
   c280 -v -c -o2 cache.c
   c280 -v -c cachasm.c
   c280 -v -c -o2 devflop.c
   c280 -v -c -o2 devio.c
   c280 -v -c -o2 devmisc.c
   c280 -v -c -o2 devtty.c
   c280 -v -c devttyas.c
   c280 -v -c -o2 devwd.c
   c280 -v -c idecf.as
   c280 -v -c -o2 ideconf.c
   c280 -v -c start.c
   c280 -v -c bcopy.c
   c280 -v -c bzero.c
   c280 -v -c outin.c
   c280 -v -c asar.as
   c280 -v -c asdiv.as
   c280 -v -c wrelop.as
   c280 -v -c idiv.as
   c280 -v -c imul.as
   c280 -v -c shar.as
   c280 -v -c shll.as
   c280 -v -c shlr.as
   c280 -v -c csv.as
   c280 -v -c -o2 kprintf.c
   c280 -v -c -o2 itob.c
   mklib.sub
   lkuzi.sub
   lk2m80.sub
E:MAKE@@@  SUB
A:SUBMIT   COM

E>c280 -v -c data.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: DATA.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:ZAS -N -oDATA.OBJ M:$CTMP1.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c -o2 machdep.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: MACHDEP.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
MACHDEP.C: main()
    60:     ptab_pointer    = ptab;
                                  ^ illegal conversion of pointer to integer (warning)
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$
0:A:OPTIMH M:$CTMP2.$$$ M:$CTMP3.$$$
 224 bytes optimized away
 554 bytes replaced
0:A:ZAS -J -N -oMACHDEP.OBJ M:$CTMP3.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c machasm.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: MACHASM.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:ZAS -N -oMACHASM.OBJ M:$CTMP1.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c newuput.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: NEWUPUT.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:ZAS -N -oNEWUPUT.OBJ M:$CTMP1.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c -o2 process.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: PROCESS.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
PROCESS.C: init2()
    85:     if (d_open( 13                  ) != 0)
                   d_open() declared implicit int ^  (warning)
    96:     if (fmount(ROOTDEV,((inoptr)0)))
            fmount() declared implicit int ^  (warning)
   104:     for (k=ub.u_d.u_page; k < (ub.u_d.u_page+16); ++k)
                                ^ illegal conversion between pointer types (warning)
                    operands of < not same pointer type ^  (warning)
   105:         *k = ((pg_descr *)0)      ;
                                          ^ illegal conversion of pointer to integer (warning)
   120: }
        ^ unused variable declaration: n_open (warning)
PROCESS.C: psleep()
   153: }
        ^ unused variable definition: dummy (warning)
PROCESS.C: ptab_alloc()
   311:       if ((p->p_ublk = zerobuf())==0    )
                                        ^ illegal conversion of integer to pointer (warning)
                                        ^ zerobuf() declared implicit int (warning)
   315: }
        ^ unused variable definition: i (warning)
PROCESS.C: clkint2()
   395: }
        ^ unused variable declaration: in_cawrite (warning)
PROCESS.C: unix2()
   483:     ub.u_d.u_usp = usp();
                                ^ illegal conversion of integer to pointer (warning)
                                ^ usp() declared implicit int (warning)
   487:     ub.u_d.u_argn3 = ugetw(ub.u_d.u_usp+4);
                    ugetw() declared implicit int ^  (warning)
   492:     ub.u_d.u_retloc = ugetw(ub.u_d.u_usp);
                                                 ^ illegal conversion of integer to pointer (warning)
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$
0:A:OPTIMH M:$CTMP2.$$$ M:$CTMP3.$$$
 109 bytes optimized away
 266 bytes replaced
0:A:ZAS -J -N -oPROCESS.OBJ M:$CTMP3.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c procasm.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: PROCASM.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
PROCASM.C: swapout()
    96:     ub.u_d.u_usp = usp();
                                ^ illegal conversion of integer to pointer (warning)
                                ^ usp() declared implicit int (warning)
PROCASM.C: dofork()
   266:     ub.u_d.u_usp = usp();
                                ^ illegal conversion of integer to pointer (warning)
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:ZAS -N -oPROCASM.OBJ M:$CTMP1.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c -o2 filesys.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: FILESYS.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
FILESYS.C: newfile()
   515:       if ((getperm(pino) & 0002)==0     )
                                       ^ getperm() declared implicit int (warning)
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$
0:A:OPTIMH M:$CTMP2.$$$ M:$CTMP3.$$$
 741 bytes optimized away
 1602 bytes replaced
0:A:ZAS -J -N -oFILESYS.OBJ M:$CTMP3.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c -o2 scall1.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: SCALL1.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
SCALL1.C: _link()
   344:     if(!(getperm(ino) & 0002) && !super())
                                    ^ getperm() declared implicit int (warning)
   391: }
        ^ unused variable declaration: getmode (warning)
SCALL1.C: _unlink()
   462: }
        ^ unused variable declaration: getmode (warning)
SCALL1.C: readi()
   592:                  (ino->c_node.i_size.o_offset-ub.u_d.u_offset.o_offset));
                                                    min() declared implicit int ^  (warning)
scall1b.c: _mknod()
   117: }
        ^ unused label: nogood2 (warning)
        ^ unused variable declaration: super (warning)
scall1b.c: _utime()
   323:     if (ino->c_node.i_uid != ub.u_d.u_euid && !super())
                                super() declared implicit int ^  (warning)
scall1b.c: _umount()
   727: }
        ^ unused variable declaration: in_casync (warning)
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$
0:A:OPTIMH M:$CTMP2.$$$ M:$CTMP3.$$$
 562 bytes optimized away
 1226 bytes replaced
0:A:ZAS -J -N -oSCALL1.OBJ M:$CTMP3.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c -o2 scall2.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: SCALL2.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
SCALL2.C: wargs()
   176:     while (ptr = ugetw(argv++))
                                      ^ illegal conversion of integer to pointer (warning)
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$
0:A:OPTIMH M:$CTMP2.$$$ M:$CTMP3.$$$
 273 bytes optimized away
 650 bytes replaced
0:A:ZAS -J -N -oSCALL2.OBJ M:$CTMP3.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c -o2 scall3.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: SCALL3.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
SCALL3.C: _signal()
   233:     retval = ub.u_d.u_sigvec[(int16)ub.u_d.u_argn1];
                  illegal conversion of pointer to integer ^  (warning)
SCALL3.C: _kill()
   279:                 if (ub.u_d.u_ptab->p_uid == p->p_uid || super() )
                                          super() declared implicit int ^  (warning)
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$
0:A:OPTIMH M:$CTMP2.$$$ M:$CTMP3.$$$
 92 bytes optimized away
 210 bytes replaced
0:A:ZAS -J -N -oSCALL3.OBJ M:$CTMP3.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c scall4.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: SCALL4.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
SCALL4.C: _execve()
   137:     p = find_zombie2();
                              ^ illegal conversion of integer to pointer (warning)
                              ^ find_zombie2() declared implicit int (warning)
   217:     datalen = dataptr;
                             ^ illegal conversion of pointer to integer (warning)
   313:                 p=make_zombie();
                                       ^ illegal conversion of integer to pointer (warning)
                                       ^ make_zombie() declared implicit int (warning)
   350:     doexec((int16 *)(ub.u_d.u_isp = nenvp - 2));
            illegal conversion between pointer types ^  (warning)
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:ZAS -N -oSCALL4.OBJ M:$CTMP1.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c -o2 cache.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: CACHE.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$
0:A:OPTIMH M:$CTMP2.$$$ M:$CTMP3.$$$
 44 bytes optimized away
 90 bytes replaced
0:A:ZAS -J -N -oCACHE.OBJ M:$CTMP3.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c cachasm.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: CACHASM.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:ZAS -N -oCACHASM.OBJ M:$CTMP1.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c -o2 devflop.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: DEVFLOP.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$
0:A:OPTIMH M:$CTMP2.$$$ M:$CTMP3.$$$
 0 bytes optimized away
 0 bytes replaced
0:A:ZAS -J -N -oDEVFLOP.OBJ M:$CTMP3.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c -o2 devio.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: DEVIO.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
DEVIO.C: bread()
    90:         if (bdread(bp) == -1)
                                    ^ bdread() declared implicit int (warning)
DEVIO.C: bfree()
   128:         if (bdwrite(bp) == -1)
                                     ^ bdwrite() declared implicit int (warning)
DEVIO.C: freebuf()
   230: }
        ^ unused variable definition: i (warning)
DEVIO.C: bdread()
   270:       if ((validdev(bp->bf_dev))==0     )
               validdev() declared implicit int ^  (warning)
DEVIO.C: pageread()
   311:     swapbase = page;
                           ^ illegal conversion of integer to pointer (warning)
DEVIO.C: pagewrite()
   327:     swapbase = page;
                           ^ illegal conversion of integer to pointer (warning)
DEVIO.C: insq()
   421:     oldspl = spl(0);
                           ^ spl() declared implicit int (warning)
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$
0:A:OPTIMH M:$CTMP2.$$$ M:$CTMP3.$$$
 290 bytes optimized away
 578 bytes replaced
0:A:ZAS -J -N -oDEVIO.OBJ M:$CTMP3.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c -o2 devmisc.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: DEVMISC.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$
0:A:OPTIMH M:$CTMP2.$$$ M:$CTMP3.$$$
 14 bytes optimized away
 28 bytes replaced
0:A:ZAS -J -N -oDEVMISC.OBJ M:$CTMP3.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c -o2 devtty.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: DEVTTY.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
DEVTTY.C:
   146: char *dflt_mode = 0006000|  0000020|0000010| 0000000;
                   illegal conversion of integer to pointer ^  (warning)
DEVTTY.C: tty_read()
   258:             if (remq(&ttyinq[minor],&c))
                  remq() declared implicit int ^  (warning)
DEVTTY.C: tty_write()
   342:                 c = ugetc(ub.u_d.u_base);
                  ugetc() declared implicit int ^  (warning)
DEVTTY.C: tty_open()
   420: }
        ^ unused variable definition: j (warning)
DEVTTY.C: tty_close()
   443: }
        ^ unused variable definition: j (warning)
DEVTTY.C: tty_ioctl()
   500:             break;
                    ^ Unreachable code (warning)
DEVTTY.C: tinproc()
   528:     if (c == 0x1b && td->t_flags == dflt_mode)
                        operands of == not same type ^  (warning)
   558:             if (uninsq(&ttyinq[minor],&oc))
                   uninsq() declared implicit int ^  (warning)
   646:     if (insq(&ttyinq[minor],c))
         insq() declared implicit int ^  (warning)
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$
0:A:OPTIMH M:$CTMP2.$$$ M:$CTMP3.$$$
 280 bytes optimized away
 602 bytes replaced
0:A:ZAS -J -N -oDEVTTY.OBJ M:$CTMP3.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c devttyas.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: DEVTTYAS.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:ZAS -N -oDEVTTYAS.OBJ M:$CTMP1.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c -o2 devwd.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: DEVWD.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$
0:A:OPTIMH M:$CTMP2.$$$ M:$CTMP3.$$$
 24 bytes optimized away
 50 bytes replaced
0:A:ZAS -J -N -oDEVWD.OBJ M:$CTMP3.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c idecf.as
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:ZAS -OIDECF.OBJ IDECF.AS
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c -o2 ideconf.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: IDECONF.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$
0:A:OPTIMH M:$CTMP2.$$$ M:$CTMP3.$$$
 0 bytes optimized away
 0 bytes replaced
0:A:ZAS -J -N -oIDECONF.OBJ M:$CTMP3.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c start.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: START.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:ZAS -N -oSTART.OBJ M:$CTMP1.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c bcopy.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: BCOPY.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:ZAS -N -oBCOPY.OBJ M:$CTMP1.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c bzero.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: BZERO.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:ZAS -N -oBZERO.OBJ M:$CTMP1.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c outin.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: OUTIN.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:ZAS -N -oOUTIN.OBJ M:$CTMP1.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c asar.as
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:ZAS -OASAR.OBJ ASAR.AS
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c asdiv.as
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:ZAS -OASDIV.OBJ ASDIV.AS
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c wrelop.as
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:ZAS -OWRELOP.OBJ WRELOP.AS
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c idiv.as
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:ZAS -OIDIV.OBJ IDIV.AS
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c imul.as
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:ZAS -OIMUL.OBJ IMUL.AS
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c shar.as
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:ZAS -OSHAR.OBJ SHAR.AS
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c shll.as
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:ZAS -OSHLL.OBJ SHLL.AS
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c shlr.as
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:ZAS -OSHLR.OBJ SHLR.AS
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c csv.as
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:ZAS -OCSV.OBJ CSV.AS
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c -o2 kprintf.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: KPRINTF.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$
0:A:OPTIMH M:$CTMP2.$$$ M:$CTMP3.$$$
 33 bytes optimized away
 64 bytes replaced
0:A:ZAS -J -N -oKPRINTF.OBJ M:$CTMP3.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>c280 -v -c -o2 itob.c
E:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: ITOB.C M:$CTMP1.$$$
0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$
0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$
0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$
0:A:OPTIMH M:$CTMP2.$$$ M:$CTMP3.$$$
 35 bytes optimized away
 82 bytes replaced
0:A:ZAS -J -N -oITOB.OBJ M:$CTMP3.$$$
ERA M:$CTMP1.$$$
ERA M:$CTMP2.$$$
ERA M:$CTMP3.$$$
ERA M:$$EXEC.$$$

E>mklib.sub
E:MKLIB    SUB
A:SUBMIT   COM

E>era runtime.lib
E>libr r runtime.lib bcopy.obj bzero.obj outin.obj
A:LIBR     COM

E>libr r runtime.lib kprintf.obj itob.obj asar.obj asdiv.obj wrelop.obj
A:LIBR     COM

E>libr r runtime.lib idiv.obj imul.obj shar.obj shll.obj shlr.obj csv.obj
A:LIBR     COM

E>lkuzi.sub
E:LKUZI    SUB
A:SUBMIT   COM

E>; Link new object library to UZI280.OBJ
E>era uzi280.obj
No File
E>; LINQ is the HiTech C V3.09 link program (renamed to keep
E>; the DigitalResearch linker LINK.COM on the system drive)
E>a:linq
A:LINQ     COM
link> -r -ouzi280.obj \
link> data.obj machasm.obj machdep.obj filesys.obj process.obj procasm.obj \
link> scall1.obj scall2.obj scall3.obj scall4.obj \
link> devtty.obj devttyas.obj \
link> devio.obj devflop.obj devmisc.obj devwd.obj idecf.obj \
link> cache.obj cachasm.obj newuput.obj \
link> runtime.lib

E>lk2m80.sub
E:LK2M80   SUB
A:SUBMIT   COM

E>; Link UZI280 core image with IDE parameters
E>a:linq
A:LINQ     COM
link> -munix.sym -n -pdata=0,text,bss -ounix.cim -c000 \
link> uzi280.obj ideconf.obj \
link> start.obj

E>era  MAKE@@@.SUB
E>
E>; Now the CP/M Utilities

E>F:
F>make
F:MAKE     COM
   c280 -c -of2 devio.c
   c280 -c -of2 xdevtty.c
   c280 -c -of2 xdevwd.c
   c280 -c -of2 xdevflo.c
   c280 -c -of2 xdevmisc.c
   c280 -c -of2 xmachdep.c
   c280 -c -of2 data.c
   c280 -c -of2 xfs1.c
   c280 -c -of2 xfs2.c
   c280 -c -of2 bcopy.c
   c280 -c -of2 bzero.c
   c280 -c -of2 spl.c
   c280 -c -of2 itob.c
   c280 -c -of2 uput.c
   c280 -c idecf.as
   c280 -c -of2 bios.c
   mkxlib.sub
F:MAKE@@@  SUB
A:SUBMIT   COM

F>c280 -c -of2 devio.c
A:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

DEVIO.C: bread()
    85:         if (bdread(bp) == -1)
                                    ^ bdread() declared implicit int (warning)
DEVIO.C: bfree()
   126:         if (bdwrite(bp) == -1)
                                     ^ bdwrite() declared implicit int (warning)
DEVIO.C: bdread()
   262:       if ((validdev(bp->bf_dev))==0     )
               validdev() declared implicit int ^  (warning)
DEVIO.C: pageread()
   303:     swapbase = page;
                           ^ illegal conversion of integer to pointer (warning)
DEVIO.C: pagewrite()
   315:     swapbase = page;
                           ^ illegal conversion of integer to pointer (warning)
DEVIO.C: insq()
   405:     oldspl = spl(0);
                           ^ spl() declared implicit int (warning)
 290 bytes optimized away
 582 bytes replaced

F>c280 -c -of2 xdevtty.c
A:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

 6 bytes optimized away
 16 bytes replaced

F>c280 -c -of2 xdevwd.c
A:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

XDEVWD.C: wd_read()
    42:     return(setup(minor, rawflag));
           setup() declared implicit int ^  (warning)
XDEVWD.C: setup()
    70:             dptrlo  = swapbase;
                                      ^ illegal conversion of pointer to integer (warning)
    77:             dptrlo  = ub.u_d.u_base;
                                           ^ illegal conversion of pointer to integer (warning)
    84:         dptrlo  = ub.u_d.u_buf->bf_data;
                                               ^ illegal conversion of pointer to integer (warning)
 19 bytes optimized away
 40 bytes replaced

F>c280 -c -of2 xdevflo.c
A:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

XDEVFLO.C: fd_read()
    43:     return (fd(1, minor, rawflag));
               fd() declared implicit int ^  (warning)
XDEVFLO.C: _1read()
   143:   temp = (char)bdos(25);
                               ^ bdos() declared implicit int (warning)
 30 bytes optimized away
 62 bytes replaced

F>c280 -c -of2 xdevmisc.c
A:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

 14 bytes optimized away
 28 bytes replaced

F>c280 -c -of2 xmachdep.c
A:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

 69 bytes optimized away
 184 bytes replaced

F>c280 -c -of2 data.c
A:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

 0 bytes optimized away
 0 bytes replaced

F>c280 -c -of2 xfs1.c
A:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

XFS1.C: xfs_init()
    45:     if (d_open( 6    ) != 0)
                                   ^ d_open() declared implicit int (warning)
    51:     if (fmount(ROOTDEV,((inoptr)0)))
            fmount() declared implicit int ^  (warning)
XFS1.C: _open()
    94:     if ((uindex = uf_alloc()) == -1)
                                    ^ uf_alloc() declared implicit int (warning)
    97:     if ((oftindex = oft_alloc()) == -1)
                                       ^ oft_alloc() declared implicit int (warning)
   105:     perm = getperm(ino);
                               ^ getperm() declared implicit int (warning)
   113:     if (getmode(ino) == 040000 &&
                                       ^ getmode() declared implicit int (warning)
   120:     if (isdevice(ino) && d_open((int)ino->c_node.i_addr[0]) != 0)
                                       isdevice() declared implicit int ^  (warning)
XFS1.C: _close()
   148:     return(doclose(uindex));
                                   ^ doclose() declared implicit int (warning)
XFS1.C: _link()
   274:     if (getmode(ino) == 040000 && !super())
                    super() declared implicit int ^  (warning)
   299:     if (ch_link(parent2,"",filename(name2),ino) == 0)
                            ch_link() declared implicit int ^  (warning)
XFS1.C: _unlink()
   365: }
        ^ unused variable declaration: i_open (warning)
XFS1.C: _write()
   409: }
        ^ unused variable definition: offp (warning)
XFS1.C: readi()
   475:                  (ino->c_node.i_size.o_offset-ub.u_d.u_offset.o_offset));
                                                    min() declared implicit int ^  (warning)
   504:         ub.u_d.u_count = cdread(ino->c_node.i_addr[0]);
                               cdread() declared implicit int ^  (warning)
XFS1.C: writei()
   584:         ub.u_d.u_count = cdwrite(ino->c_node.i_addr[0]);
                               cdwrite() declared implicit int ^  (warning)
   594: }
        ^ unused variable declaration: zerobuf (warning)
        ^ unused variable definition: created (warning)
XFS1.C: _stat()
   932:       if ((valadr(buf,sizeof(struct stat)) && (ino = n_open(path,((inoptr*)0))))==0     )
                                                        valadr() declared implicit int ^  (warning)
 519 bytes optimized away
 1166 bytes replaced

F>c280 -c -of2 xfs2.c
A:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

XFS2.C: _ioctl()
   107:       if ((isdevice(ino))==0    )
                                        ^ isdevice() declared implicit int (warning)
   113:       if ((getperm(ino) & 0002)==0      )
                                      ^ getperm() declared implicit int (warning)
   121:     if (d_ioctl(dev, request,data))
          d_ioctl() declared implicit int ^  (warning)
XFS2.C: _mount()
   139:       if ((super())==0  )
                                ^ super() declared implicit int (warning)
   154:     if (getmode(sino) != 060000)
                                       ^ getmode() declared implicit int (warning)
   168:     if ( dev >=   4     || d_open(dev))
               d_open() declared implicit int ^  (warning)
   182:     if (fmount(dev,dino))
                                ^ fmount() declared implicit int (warning)
XFS2.C: _umount()
   226:       if ((validdev(dev))==0    )
                                        ^ validdev() declared implicit int (warning)
XFS2.C: srch_dir()
   399:             if (namecomp(compname,buf[curentry].d_name))
                              namecomp() declared implicit int ^  (warning)
XFS2.C: i_open()
   451:     static nexti = i_tab;
                                ^ illegal conversion of pointer to integer (warning)
   476:     j = nexti;
                     ^ illegal conversion of integer to pointer (warning)
   479:         nexti =j;
                        ^ illegal conversion of pointer to integer (warning)
XFS2.C: blk_alloc()
   866:     buf = bread(devno, newno, 2);
                                        ^ illegal conversion between pointer types (warning)
 810 bytes optimized away
 1748 bytes replaced

F>c280 -c -of2 bcopy.c
A:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

 6 bytes optimized away
 12 bytes replaced

F>c280 -c -of2 bzero.c
A:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

 6 bytes optimized away
 12 bytes replaced

F>c280 -c -of2 spl.c
A:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

 2 bytes optimized away
 4 bytes replaced

F>c280 -c -of2 itob.c
A:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

 35 bytes optimized away
 82 bytes replaced

F>c280 -c -of2 uput.c
A:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

 12 bytes optimized away
 24 bytes replaced

F>c280 -c idecf.as
A:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU


F>c280 -c -of2 bios.c
A:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

 2 bytes optimized away
 4 bytes replaced

F>mkxlib.sub
F:MKXLIB   SUB
A:SUBMIT   COM

F>era xlib.lib
F>libr
A:LIBR     COM
libr>  r xlib.lib xfs1.obj xfs2.obj devio.obj xdevtty.obj xdevwd.obj xdevflo.obj \
libr>  xdevmisc.obj xmachdep.obj data.obj \
libr>  itob.obj uput.obj idecf.obj \
libr>  bzero.obj bcopy.obj spl.obj bios.obj

F>era  MAKE@@@.SUB
F>
F>

F>; Now the Utilities
F>XUTILS
F:XUTILS   SUB
A:SUBMIT   COM

F>c280 -c -of2 ideconf.c
A:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

 0 bytes optimized away
 0 bytes replaced

F>;
F>c280 -c -of2 mkfs.c
A:C280     COM
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE
Special version for the Zilog Z280 MPU

MKFS.C: main()
    37:     dev = atoi(argv[1]);
                               ^ atoi() declared implicit int (warning)
    61:     if (!yes())
                      ^ yes() declared implicit int (warning)
    65:     if (d_open(dev))
                           ^ d_open() declared implicit int (warning)
 79 bytes optimized away
 164 bytes replaced

F>;
F>; (fsck has a missing _da_read error)
F>;c280 -c -of2 fsck.c
F>;
F>lkxutil mkfs
F:LKXUTIL  SUB
A:SUBMIT   COM

F>a:linq
A:LINQ     COM
link> -c100h -oMKFS.com 0:a:crtcpm.obj MKFS.obj ideconf.obj \
link> xlib.lib 0:a:lib280c.lib

F>;lkxutil fsck
F>lkxutil ucp
F:LKXUTIL  SUB
A:SUBMIT   COM

F>a:linq
A:LINQ     COM
link> -c100h -oUCP.com 0:a:crtcpm.obj UCP.obj ideconf.obj \
link> xlib.lib 0:a:lib280c.lib

F>
F>; Now make a bootable UZI volume (Starts after the 8x CP/M 8MB partitions)
F>
F>mkboot
F:MKBOOT   SUB
A:SUBMIT   COM

F>mkfs 0 600 65000
F:MKFS     COM
Making filesystem on device 0 with isize 600 fsize 65000. Confirm? y

F>ucp 0
F:UCP      COM
unix: mkdir dev
unix: cd dev
unix: mknod tty  020666 5
unix: mknod tty1 020666 6
unix: mknod tty2 020666 7
unix: mknod tty3 020666 11
unix: mknod tty4 020666 12
unix: mknod tty5 020666 13
unix: mknod tty6 020666 14
unix: mknod wd0  060644 0
unix: mknod wd1  060644 2
unix: mknod wd2  060644 3
unix: mknod fd0  060644 1
unix: mknod rwd0 020444 0
unix: mknod rwd1 020444 2
unix: mknod rwd2 020444 3
unix: mknod lpr  020222 4
unix: mknod null 020666 8
unix: mknod kmem 020444 9
unix: mknod rmt  020444 10
unix: mknod wmt  020222 10
unix: cd /
unix: mkdir /etc
unix: mkdir /bin
unix: mkdir /usr
unix: mkdir /usr/root
unix: mkdir /Tapes
unix: cd /
unix: bget init
unix: chmod init 0755
unix: cd /bin
unix: bget clam
unix: chmod clam 0755
unix: bget sh
unix: chmod sh 0755
unix: bget setuart
unix: chmod  setuart 0755
unix: bget ls
unix: chmod ls 0755
unix: bget ln
unix: chmod ln 0755
unix: bget login
unix: chmod login 0755
unix: bget mkdir
unix: chmod mkdir 0755
unix: bget rm
unix: chmod rm 0755
unix: bget rmdir
unix: chmod rmdir 0755
unix: bget touch
unix: chmod touch 0755
unix: bget mount
unix: chmod mount 0755
unix: bget umount
unix: chmod umount 0755
unix: bget uncompress
unix: chmod uncompress 0755
unix: bget sync
unix: chmod sync 0755
unix: bget tar
unix: chmod tar 0755
unix: bget kill
unix: chmod kill 0755
unix: bget ps
unix: chmod ps 0755
unix: cd /etc
unix: get rc
unix: chmod rc 0644
unix: get passwd
unix: chmod passwd 0644
unix: get group
unix: chmod group 0644
unix: get ttytab
unix: chmod ttytab 0644
unix: get termcap
unix: chmod termcap 0644
unix: bget utmp
unix: exit

F>
F>

F>e:
E>
E>; Build the boot loader
E>zsm4 =bootuzi
A:ZSM4     COM
Z80/Z180/Z280 Macro-Assembler V4.0 Beta 11

Errors: 0
Finished.

E>link bootuzi
A:LINK     COM
LINK 1.31

ABSOLUTE     0000
CODE SIZE    0183 (0100-0282)
DATA SIZE    0000
COMMON SIZE  0000
USE FACTOR     00

E>bootuzi
E:BOOTUZI  COM

UZI280 is (c) Copyright (1990-96) by Stefan Nitschke and Doug Braun

boot: 0
init: /usr/adm/wtmp: Bad file number
UZI280 version 1.12
login: root
%ls -la
total 12
rwxrwxrwx   9 root          512 Apr 19     1992 ./
rwxrwxrwx   9 root          512 Apr 19     1992 ../
rwxrwxrwx   2 root          512 Apr 19     1992 Tapes/
rwxrwxrwx   2 root          512 Apr 19     1992 bin/
rwxrwxrwx   2 root          512 Apr 19     1992 dev/
rwxrwxrwx   2 root          512 Apr 19     1992 etc/
rwxr-xr-x   1 root         9088 Apr 19     1992 init*
rwxrwxrwx   2 root          512 Apr 19     1992 usr/
%cd bin
%ls -la
total 260
rwxrwxrwx   2 root          512 Apr 19     1992 ./
rwxrwxrwx   9 root          512 Apr 19     1992 ../
rwxr-xr-x   1 root        83200 Apr 19     1992 clam*
rwxr-xr-x   1 root         8704 Apr 19     1992 kill*
rwxr-xr-x   1 root        10880 Apr 19     1992 ln*
rwxr-xr-x   1 root         9728 Apr 19     1992 login*
rwxr-xr-x   1 root        16512 Apr 19     1992 ls*
rwxr-xr-x   1 root         8064 Apr 19     1992 mkdir*
rwxr-xr-x   1 root         8192 Apr 19     1992 mount*
rwxr-xr-x   1 root         9600 Apr 19     1992 ps*
rwxr-xr-x   1 root        10752 Apr 19     1992 rm*
rwxr-xr-x   1 root         8576 Apr 19     1992 rmdir*
rwxr-xr-x   1 root         4736 Apr 19     1992 setuart*
rwxr-xr-x   1 root        31104 Apr 19     1992 sh*
rwxr-xr-x   1 root          768 Apr 19     1992 sync*
rwxr-xr-x   1 root        30080 Apr 19     1992 tar*
rwxr-xr-x   1 root         4224 Apr 19     1992 touch*
rwxr-xr-x   1 root         5888 Apr 19     1992 umount*
rwxr-xr-x   1 root        14592 Apr 19     1992 uncompress*
%cd ..
%mkdir /tmp
%cd /tmp
%ls -la >t.tmp
%ls -la
total 1
rwxrwxrwx   2 root          512 Dec 11 23:59:58 ./
rwxrwxrwx  10 root          512 Dec 11 23:59:58 ../
rw-rw-rw-   1 root          165 Dec 11 23:59:58 t.tmp
%sync
%sync
%sync
%<ctrl-d>

UZI280 version 1.12
login:

(hit reset to restart / shutdown)




--
Tony Nicholson
Re: Interested in a Z280 SBC [message #5746 is a reply to message #5745] Sat, 15 December 2018 05:35 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 405
Registered: March 2017
Location: New Mexico, USA
Senior Member
WOW, Wow, wow! This is major cool! I'm dropping everything...

Edit:
I ran into two obstacles: Disk Utility does not seem to erase directories. Perhaps my version is too old (v7.Cool, I think you'd mentioned v8.8 but I'm not able to locate it. Alternatively, I can just fill a 64meg CF disk with 0xE5, but that's such a kluge...

When running make@@@.sub, it looks for $EXEC in drive A and can't find it. Is that a Hitech C file?

---------------
More Edit:

I know nothing of UZI280, so I need helps.

I did kludge up an utility to fill a 64meg CF with 0xE5, so now I have a formatted CF disk.
I used LU310.COM to extract UZIKERNL.LBR and UZIXUTIL.LBR to drive E:
I used the latest CPM3BNK8.SYS as CPM3.SYS
I used the cpm3bin-with-y2k-fixes and put them in drive A:
bootup CP/M 3 and type "bootuzi" at drive E:
typed '0' at "boot:" prompt. It hanged there.

CP/M V3.0 Loader
Copyright (C) 1998, Caldera Inc.

 RESBIOS3 SPR  FA00  0600
 BNKBIOS3 SPR  B600  2A00
 RESBDOS3 SPR  F400  0600
 BNKBDOS3 SPR  8800  2E00

 61K TPA

%RAMDISK label missing. Initialise (Y/N) ? Y - RAMDISK initialised.

Z280RC Banked BIOS 07-Dec-2018
Built with Cache MOVE-w/DMA BigDirE-H Cont.-DMA Alloc-CSV
Drives CompactFlash A:..H: RamDisk M:
C>e:
E>bootuzi

UZI280 is (c) Copyright (1990-96) by Stefan Nitschke and Doug Braun

boot: 0



Bill

[Updated on: Sat, 15 December 2018 09:18]

Report message to a moderator

Re: Interested in a Z280 SBC [message #5747 is a reply to message #1189] Sat, 15 December 2018 05:58 Go to previous messageGo to next message
stefan_n is currently offline  stefan_n
Messages: 11
Registered: June 2018
Junior Member
Congratulations! It's so cool to see this old baby alive again Smile
Re: Interested in a Z280 SBC [message #5748 is a reply to message #5747] Sat, 15 December 2018 07:01 Go to previous messageGo to next message
etchedpixels is currently offline  etchedpixels
Messages: 202
Registered: October 2015
Senior Member
Very cool
Re: Interested in a Z280 SBC [message #5749 is a reply to message #5746] Sat, 15 December 2018 19:02 Go to previous messageGo to next message
agn453 is currently offline  agn453
Messages: 51
Registered: June 2018
Location: Newcastle, NSW, Australia
Member
plasmo wrote on Sun, 16 December 2018 00:35
WOW, Wow, wow! This is major cool! I'm dropping everything...

Edit:
I ran into two obstacles: Disk Utility does not seem to erase directories. Perhaps my version is too old (v7.Cool, I think you'd mentioned v8.8 but I'm not able to locate it. Alternatively, I can just fill a 64meg CF disk with 0xE5, but that's such a kluge...


I've just added DU v8.8 and NULU 1.52 to the https://github.com/agn453/Z280RC repositry in the utilities folder (DU.COM and NULU.COM). I'll have to go looking to find the original distribution kits (with documentation) for these and put them up too.

Quote:


When running make@@@.sub, it looks for $EXEC in drive A and can't find it. Is that a Hitech C file?


Yes. This is part of HiTech C Z80 V3.09 which I have installed to the A: drive in User 0 (where all my system utilities live and easily accessed via the CP/M-Plus search path). I might zip up an image of a 128KB CompactFlash with all my Z280RC stuff on it - so you can use dd to write it to an empty CF card and boot your Z280RC from it.

Quote:

---------------
More Edit:

I know nothing of UZI280, so I need helps.

I did kludge up an utility to fill a 64meg CF with 0xE5, so now I have a formatted CF disk.
I used LU310.COM to extract UZIKERNL.LBR and UZIXUTIL.LBR to drive E:
I used the latest CPM3BNK8.SYS as CPM3.SYS
I used the cpm3bin-with-y2k-fixes and put them in drive A:
bootup CP/M 3 and type "bootuzi" at drive E:
typed '0' at "boot:" prompt. It hanged there.

CP/M V3.0 Loader
Copyright (C) 1998, Caldera Inc.

 RESBIOS3 SPR  FA00  0600
 BNKBIOS3 SPR  B600  2A00
 RESBDOS3 SPR  F400  0600
 BNKBDOS3 SPR  8800  2E00

 61K TPA

%RAMDISK label missing. Initialise (Y/N) ? Y - RAMDISK initialised.

Z280RC Banked BIOS 07-Dec-2018
Built with Cache MOVE-w/DMA BigDirE-H Cont.-DMA Alloc-CSV
Drives CompactFlash A:..H: RamDisk M:
C>e:
E>bootuzi

UZI280 is (c) Copyright (1990-96) by Stefan Nitschke and Doug Braun

boot: 0




CPM3BNK8.SYS is my general working system-image for CP/M-Plus. The interrupt version I've been testing also works - but file transfers using XMODEM are flaky due to interrupt handling overheads.

Did you run the MKBOOT.SUB file from the UZIXUTIL.LBR (extracted to F:)? This writes a bootable 32MB UZI partition at a 64MB offset from the start of the CompactFlash card. Be careful with extracting the library files to different drives/user areas. There are filename clashes (and the files are different - particularly the CONFIG.INC source file).

I've also just added the binaries distribution files in a UZIBNTAR.LBR file to GitHub (instructions in the README.md on the GitHub project home page). I'll probably tinker some more later today. It's hot and humid here and both myself and my border collies need a swim at the beach!

Tony


--
Tony Nicholson
Re: Interested in a Z280 SBC [message #5750 is a reply to message #5749] Sat, 15 December 2018 20:33 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 405
Registered: March 2017
Location: New Mexico, USA
Senior Member
Tony,
Thanks for the instructions. The one I missed is that CF disk needs to be bigger than 64meg because UZI partition is offset above the 64meg. So I started with a new 512meg CF disk and XMODEM all the software and I think I have it working now.
Bill

E>a:submit mkboot.sub

E>mkfs 0 600 65000
Making filesystem on device 0 with isize 600 fsize 65000. Confirm? y

E>ucp 0
unix: mkdir dev
unix: cd dev
unix: mknod tty  020666 5
unix: mknod tty1 020666 6
unix: mknod tty2 020666 7
unix: mknod tty3 020666 11
unix: mknod tty4 020666 12
unix: mknod tty5 020666 13
unix: mknod tty6 020666 14
unix: mknod wd0  060644 0
unix: mknod wd1  060644 2
unix: mknod wd2  060644 3
unix: mknod fd0  060644 1
unix: mknod rwd0 020444 0
unix: mknod rwd1 020444 2
unix: mknod rwd2 020444 3
unix: mknod lpr  020222 4
unix: mknod null 020666 8
unix: mknod kmem 020444 9
unix: mknod rmt  020444 10
unix: mknod wmt  020222 10
unix: cd /
unix: mkdir /etc
unix: mkdir /bin
unix: mkdir /usr
unix: mkdir /usr/root
unix: mkdir /Tapes
unix: cd /
unix: bget init
unix: chmod init 0755
unix: cd /bin
unix: bget clam
unix: chmod clam 0755
unix: bget sh
unix: chmod sh 0755
unix: bget setuart
unix: chmod  setuart 0755
unix: bget ls
unix: chmod ls 0755
unix: bget ln
unix: chmod ln 0755
unix: bget login
unix: chmod login 0755
unix: bget mkdir
unix: chmod mkdir 0755
unix: bget rm
unix: chmod rm 0755
unix: bget rmdir
unix: chmod rmdir 0755
unix: bget touch
unix: chmod touch 0755
unix: bget mount
unix: chmod mount 0755
unix: bget umount
unix: chmod umount 0755
unix: bget uncompress
unix: chmod uncompress 0755
unix: bget sync
unix: chmod sync 0755
unix: bget tar
unix: chmod tar 0755
unix: bget kill
unix: chmod kill 0755
unix: bget ps
unix: chmod ps 0755
unix: cd /etc
unix: get rc
unix: chmod rc 0644
unix: get passwd
unix: chmod passwd 0644
unix: get group
unix: chmod group 0644
unix: get ttytab
unix: chmod ttytab 0644
unix: get termcap
unix: chmod termcap 0644
unix: bget utmp
unix: exit

E>bootuzi

UZI280 is (c) Copyright (1990-96) by Stefan Nitschke and Doug Braun

boot: 0
init: /usr/adm/wtmp: Bad file number
UZI280 version 1.12
login: root
%ls -la
total 12
rwxrwxrwx   9 root          512 Apr 19     1992 ./
rwxrwxrwx   9 root          512 Apr 19     1992 ../
rwxrwxrwx   2 root          512 Apr 19     1992 Tapes/
rwxrwxrwx   2 root          512 Apr 19     1992 bin/
rwxrwxrwx   2 root          512 Apr 19     1992 dev/
rwxrwxrwx   2 root          512 Apr 19     1992 etc/
rwxr-xr-x   1 root         9088 Apr 19     1992 init*
rwxrwxrwx   2 root          512 Apr 19     1992 usr/
%cd bin
%ls -la
total 260
rwxrwxrwx   2 root          512 Apr 19     1992 ./
rwxrwxrwx   9 root          512 Apr 19     1992 ../
rwxr-xr-x   1 root        83200 Apr 19     1992 clam*
rwxr-xr-x   1 root         8704 Apr 19     1992 kill*
rwxr-xr-x   1 root        10880 Apr 19     1992 ln*
rwxr-xr-x   1 root         9728 Apr 19     1992 login*
rwxr-xr-x   1 root        16512 Apr 19     1992 ls*
rwxr-xr-x   1 root         8064 Apr 19     1992 mkdir*
rwxr-xr-x   1 root         8192 Apr 19     1992 mount*
rwxr-xr-x   1 root         9600 Apr 19     1992 ps*
rwxr-xr-x   1 root        10752 Apr 19     1992 rm*
rwxr-xr-x   1 root         8576 Apr 19     1992 rmdir*
rwxr-xr-x   1 root         4736 Apr 19     1992 setuart*
rwxr-xr-x   1 root        31104 Apr 19     1992 sh*
rwxr-xr-x   1 root          768 Apr 19     1992 sync*
rwxr-xr-x   1 root        30080 Apr 19     1992 tar*
rwxr-xr-x   1 root         4224 Apr 19     1992 touch*
rwxr-xr-x   1 root         5888 Apr 19     1992 umount*
rwxr-xr-x   1 root        14592 Apr 19     1992 uncompress*
%cd ..
%mkdir /tmp
%cd /tmp
%ls -la > t.tmp
%ls -la
total 1
rwxrwxrwx   2 root          512 Dec 11 23:59:58 ./
rwxrwxrwx  10 root          512 Dec 11 23:59:58 ../
rw-rw-rw-   1 root          165 Dec 11 23:59:58 t.tmp
Re: Interested in a Z280 SBC [message #5762 is a reply to message #5750] Mon, 17 December 2018 22:31 Go to previous messageGo to next message
agn453 is currently offline  agn453
Messages: 51
Registered: June 2018
Location: Newcastle, NSW, Australia
Member
An update for UZI280 on the Z280RC...

I've implemented support for the DS1302 timekeeper chip in UZI280 to set the time-of-day and fixed an issue with I/O page selection affecting maskable interrupts in my CompactFlash device support routine (IDECF.AS).

You can fetch updated files (from https://github.com/agn453/Z280RC Wink for MACHDEP.C MACHASM.C and IDECF.AS from system/uzi280-kernel/ and re-compile the kernel using MAKE - or download the UZIKERNL.LBR file again to get the complete kit of kernel build files.

Fixing the aforementioned defects has introduced another problem the the UZI280 "ps" command which was previously working but now gives a "Can't read /dev/kmem: Error 0" which I am investigating.

Next I need to find/build the C compiler libraries so I can make a "Hello world". I'm going to try making c.lib and f.lib from the HiTech C Z80 library sources...

Tony


--
Tony Nicholson

[Updated on: Mon, 17 December 2018 22:33]

Report message to a moderator

Re: Interested in a Z280 SBC [message #5764 is a reply to message #1189] Tue, 18 December 2018 06:27 Go to previous messageGo to next message
snhirsch_gmail.com is currently offline  snhirsch_gmail.com
Messages: 62
Registered: May 2017
Member
Perhaps I've missed the obvious, but is there a ready-to-boot version of Uzi 280 for the CPU280?
Re: Interested in a Z280 SBC [message #5766 is a reply to message #5764] Tue, 18 December 2018 07:15 Go to previous messageGo to next message
lowen is currently offline  lowen
Messages: 190
Registered: August 2016
Location: Western NC USA
Senior Member
snhirsch_gmail.com wrote on Tue, 18 December 2018 09:27
Perhaps I've missed the obvious, but is there a ready-to-boot version of Uzi 280 for the CPU280?


Not yet; the version being discussed is for Bill's Z280RC. Getting the CPU280 version running is a very similar process, and simply having the process well-documented for one board will inform progress on the other. I have not as yet had time to assemble my REH-IDE board, but once I have the two-board system running I'm going to try my hand at building UZI280, and then I can make a disk image.


--
Bughlt: Sckmud
Shut her down Scotty, she's sucking mud again!
Re: Interested in a Z280 SBC [message #5769 is a reply to message #5766] Tue, 18 December 2018 13:22 Go to previous messageGo to next message
agn453 is currently offline  agn453
Messages: 51
Registered: June 2018
Location: Newcastle, NSW, Australia
Member
A note to followers of the Z280RC version of UZI280 saga...

Beware! Corrupting the UZI file system partition is easy to do if a program hangs or the system becomes unresponsive.

Make sure you use "shutdown -h now" to shut the system down - or keep backups of the CompactFlash card to allow a quick rollback should something go wrong! I'm getting good at rebuilding the UZI partition! Smile

Now I'm looking around for working "fsck" code (that will run under a 61KB CP/M system). The UZI180 code for the P112 at http://p112.sourceforge.net/index.php?downloads#uzi180 seems to suggest quite a few bugs linger in the (older) UZI280 code.

Tony


--
Tony Nicholson
Re: Interested in a Z280 SBC [message #5776 is a reply to message #5769] Wed, 19 December 2018 02:02 Go to previous messageGo to next message
etchedpixels is currently offline  etchedpixels
Messages: 202
Registered: October 2015
Senior Member
The UZI180 code also has a few bugs I found in the Fuzix work, and I'm sure the Fuzix code has plenty more. One problem is that I've yet to find a file system stress test tool that runs in 48K.

For the fsck you should have no trouble on space. The Fuzix fsck is derived from the UZI one. It has a few small changes to reduce memory consumption but those were to get it running on a machine with 32K user space. The UZI fsck is btw also buggy. I've fixed a few things for the Fuzix one but some of the hard stuff I punted on and simply made it re-run itself when it does certain fixups that need the earlier fixes re-doing.

The Fuzix one won't run as is with an UZI fs as the Fuzix fs is slightly different (superblock changes, 30 character file names, unix compatible time stamps and file offsets) but it should be easy enough to steal the 'restart on this kind of fixup' code from it and if need be the main memory usage fixes (bitmaps not bytemaps, free a buffer once it's not needed so we have more space for pathname checking)

Alan
Re: Interested in a Z280 SBC [message #5956 is a reply to message #1189] Sat, 16 February 2019 13:00 Go to previous messageGo to previous message
fritzeflink is currently offline  fritzeflink
Messages: 67
Registered: January 2017
Location: germany
Member
As I have problems with my CPU280 I got a running one from a friend.

Today we had a meeting and while talking I looked onto both cards and saw I never thought about. Embarrassed
My 'bad' system has a Z280 stamped 8735 but I have 2 spare Z280 both stamped in 91.

May bee the 87 version has too much bugs I will replace it with a modern one. Very Happy

I told about the problem by stopping to work after ram test in https://www.retrobrewcomputers.org/forum/index.php?t=msg& ;th=93&goto=4162&#msg_4162

Z280 from 87
/forum/index.php?t=getfile&id=1258&private=0

spare
/forum/index.php?t=getfile&id=1259&private=0


/*-----
fritz
-----*/
Previous Topic: MSX cartridges / pcbs
Next Topic: S-100 4GB DRAM board


Current Time: Sun May 26 02:28:50 PDT 2019

Total time taken to generate the page: 0.01898 seconds