News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu

a mathematical demo

Started by litwr, 19:31, 24 December 15

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

robcfg

MESS (well, now it's MAME altogether) is always work in progress, but it has indeed a debugger.


Also, latest version is 0.173 IIRC.


I agree that CP/M Box is easier to use, but MAME and CP/M Box objectives are different.

arnoldemu

Quote from: litwr on 11:37, 18 May 16
... iDSK and CPCXFS utilities do not work with PCW disk images.  ....
cpcxfs does.

You need the cpmdiscs.def file next to the cpcxfs executable. The cpmdiscs.def is in the cpcxfs.zip file you can download from my website.

Then when you run cpcxfs you can type "formats" to list them. They are named PC1A, PC1B, PCW2 and PCW3.
These are 173k single sided, 173K double sided and 706K.

If you want to format use this:

format -f PCW3

and when you open a disc use -f to define which it is. Sometimes it can autodetect, but because many formats share common sector ids and number of sectors per track (but differing number of filenames in the directory etc) it can gues the wrong one.


My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

mahlemiut

Quote from: litwr on 11:37, 18 May 16
This MESS became a total mess.  :o I'd found ROMs, ran MESS and got "THIS SYSTEM DOESN'T WORK"  :( It is MESS 0.154
MESS has no debugger too... So I prefer to try CPM-box under VirtualBox.  I remember PCW as friendly computer but I was in error.  It couldn't even read CPC disks.  iDSK and CPCXFS utilities do not work with PCW disk images.  I am almost ready to cease to do anything with all this mess. :(
It has the system doesn't work flag because the boot process is still not accurate.  The system does generally work, however (last I checked ;)).
Add -debug to the commandline to use the debugger.
- Barry Rodewald

litwr

Quote from: arnoldemu on 13:05, 18 May 16
If you want to format use this:

format -f PCW3

and when you open a disc use -f to define which it is. Sometimes it can autodetect, but because many formats share common sector ids and number of sectors per track (but differing number of filenames in the directory etc) it can gues the wrong one.
Thanks! :) It works but -f option of open command is undocumented. :( BTW your code for timing works too. :) The emulated by CPM-Box PCW8256 is a bit slower than CPC6128.  The timer and stopwatch gave almost the identical results.  Joyce is less accurate, its results are 12% faster than the reality of stopwatch.
The results for PCW8256 look a bit incorrect.  Either its z80 has no wait-states at all or CP/M Box is not accurate enough...
Is there dedicated to PCW forum?

Quote from: mahlemiut on 13:55, 18 May 16
It has the system doesn't work flag because the boot process is still not accurate.  The system does generally work, however (last I checked).
Add -debug to the commandline to use the debugger.
I tried to load CP/M.  It was loaded successfully with Joyce or CP/M Box.  MESS shows the initial CP/M screen but the prompt was not shown - the system began meditation.  Maybe newer MESS works better... BTW MESS shows that PCW8256 uses CPU at 4 MHz, Wikipedia says that it is 3.4 MHz.  What is right?

mahlemiut

Quote from: litwr on 18:20, 18 May 16
I tried to load CP/M.  It was loaded successfully with Joyce or CP/M Box.  MESS shows the initial CP/M screen but the prompt was not shown - the system began meditation.  Maybe newer MESS works better... BTW MESS shows that PCW8256 uses CPU at 4 MHz, Wikipedia says that it is 3.4 MHz.  What is right?
Quickly looking at the schematics (not something I'm great at), it looks like it is 4MHz (from the base clock of 32MHz).  Likely has some wait states that may slow it down, but I don't know the details on that.
- Barry Rodewald

arnoldemu

Quote from: litwr on 18:20, 18 May 16
 
Thanks! :) It works but -f option of open command is undocumented. :(

I will fix that :)
My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

arnoldemu

Quote from: mahlemiut on 23:27, 18 May 16
Quickly looking at the schematics (not something I'm great at), it looks like it is 4MHz (from the base clock of 32MHz).  Likely has some wait states that may slow it down, but I don't know the details on that.
From Amstrad's specification:

"The processor is a Z80A-CPU running at a clock frequency of 4.00 MHz (+/-0.1%).  There is logic that stretches /MREQ cycles using the processor /WAIT input during VDU accesses to the screen memory; this is the same as for the CPC464, but note that, unlike the CPC464, IORQ cycles are not stretched.  The main board hardware does not make use of the processor's refresh counter, but expansion memory add-ons may use this feature."
My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

litwr

Quote from: arnoldemu on 06:40, 19 May 16
I will fix that :)
Thanks. :)

I have just released a new update.  It contains data for rare but famous systems, for example, the first ARM system which cost above £4000 at 1986, the fastest 8-bit PC (Acorn BBC Micro with 6502 @4MHz and Z80 @6MHz), ...  All data for Acorn systems are gotten from real hardware.  I still have problem with data for Amstrad PCW.  CPM Box looks quite accurate but I suspect up to 10% inaccuracy in timing.  Z80 at PCW should be a bit faster than at CPC because it has less wait states but CPM-Box shows PCW a bit slower than CPC.
Does anybody know where could I ask for help with the hardware to run my demo?  Is it true that PCW models 8256, 8512, 9512 have the same CPU performance?  Thanks.
π


TFM

Quote from: litwr on 18:51, 02 September 16
Thanks. :)


... the fastest 8-bit PC (Acorn BBC Micro with 6502 @4MHz and Z80 @6MHz)


Sorry dude, the fastest 8 bit PC ist the Genie IIIS with two Z80 at 8 MHz. I got one at home, so I'm not telling rumors.  :)
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

robcfg

#59
Well, for CPMBox assistance, I'll summon @Habi as he programmed it and is a PCW expert.

Also, I have some swedish Luxor computers which have a very powerful basic dialect. Maybe they are worth testing.

litwr

#60
Quote from: TFM on 19:50, 02 September 16
Sorry dude, the fastest 8 bit PC ist the Genie IIIS with two Z80 at 8 MHz. I got one at home, so I'm not telling rumors.  :)
Are you sure?  I could find The Machine Room :: TCS Trommeschlaeger :: Genie IIIs :: Quick view.  It says about 7.2 MHz.  Acorn z80 for BBC Micro works without wait states at all.  Do you have CP/M for your Genie IIIS?  I can attach the version of my demo without timer support for a stopwatch... However 6502 @4MHz is generally a bit faster than 8 MHz z80 without any delays.
Quote from: robcfg on 20:33, 02 September 16
Well, for CPMBox assistance, I'll summon @Habi as he programmed it and is a PCW expert.
Also, I have some swedish Luxor computers which have a very powerful basic dialect. Maybe they are worth testing.
Thank you!  The work with benchmarks may improve emulators. :) I've just found http://www.amstrad.es/forum/viewforum.php?f=35
But my Spanish consists of several dozens words only. :( However I am going to try to register in hope to find several English speaking users (google translate may also help).
My demo is 100% ML and pretends to be the world fastest.  It may use Basic only to access to the timer.

robcfg

Habi is already registered here. I asked him and he said the timings should be the same as he emulates contention.

Also basic on the PCW is not specially optimal, it has bigger video memory and goes through bdos and bios instead of straight to firmware, which make it slower.

TFM

#62
Quote from: litwr on 10:48, 03 September 16
Are you sure?  I could find The Machine Room :: TCS Trommeschlaeger :: Genie IIIs :: Quick view.  It says about 7.2 MHz.  Acorn z80 for BBC Micro works without wait states at all.  Do you have CP/M for your Genie IIIS?

I am sure.  :)  Therefore I told that I actually have (and use) one, because the Dumbnet tells no nothing about it. Both Z80H CPUs run without waitstates. The Genie IIIS (special version for medical applications, not the slow 7.2 MHz one) has its own 64 KB Video-memory so there is no need for wait states. The RAM is the quick and expansive one (it has 256 KB, but can be expanded to 1 MB). You can add up to four extra CPU cards with a Z80H running at 8 MHz and having it's own 64 KB RAM.
The CPUs can communicate by using I/O ports and by sharing the same(!) RAM together.

It also has two each Z80SIO and Z80PIO and an RTC. A hard-disc (I never had) can be connected too.

There are two versions of CP/M Plus. They are both really well done.

There is also the ability of using Newdos-80 and other stuff related to TRS computers.

The GFX is 512 x 512 and a textmode can be / is overlayed. Very nice

The sound.... doesn't exit.  ;D

However 6 MHz Z80 + 4 MHz 6502 is slower than 8 MHz Z80 + 8 MHz Z80  :)


To compare the good Z80 to an 6502... oh please spare us this kind of flame war.  :-\
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

litwr

#63
Quote from: robcfg on 12:52, 03 September 16
Habi is already registered here. I asked him and he said the timings should be the same as he emulates contention.

Also basic on the PCW is not specially optimal, it has bigger video memory and goes through bdos and bios instead of straight to firmware, which make it slower.
¡muchas gracias!  Sorry I want to believe but I have doubts.  The results from CPM-Box give me several points for them.  I repeat the program doesn't use Basic it is the pure machine language.  So PCW has to be a bit faster than CPC....  I have registered at amstrad.es/forum but I have no rights to write a new message.  :(
Quote from: TFM on 19:11, 03 September 16
I am sure.  :)  Therefore I told that I actually have (and use) one, because the Dumbnet tells no nothing about it. Both Z80H CPUs run without waitstates. The Genie IIIS (special version for medical applications, not the slow 7.2 MHz one) has its own 64 KB Video-memory so there is no need for wait states. The RAM is the quick and expansive one (it has 256 KB, but can be expanded to 1 MB). You can add up to four extra CPU cards with a Z80H running at 8 MHz and having it's own 64 KB RAM.
The CPUs can communicate by using I/O ports and by sharing the same(!) RAM together.

It also has two each Z80SIO and Z80PIO and an RTC. A hard-disc (I never had) can be connected too.

There are two versions of CP/M Plus. They are both really well done.

There is also the ability of using Newdos-80 and other stuff related to TRS computers.

The GFX is 512 x 512 and a textmode can be / is overlayed. Very nice

The sound.... doesn't exit.  ;D

However 6 MHz Z80 + 4 MHz 6502 is slower than 8 MHz Z80 + 8 MHz Z80  :)

To compare the good Z80 to an 6502... oh please spare us this kind of flame war.  :-\

It looks like you are telling about some very big rarity which is even without the common name.  Have you any link to its description?  MSX has also video memory but it has wait states for Z80 too. ;) These kind of things should be tested.  I have attached a COM-file of my demo program which should run with any CP/M 2.2 compatible OS.  It doesn't print time.   So the stopwatch is required.  It is about 10 minutes for 3000 digits with z80 at 8 MHz, or slightly above a minute for 1000 digits.
The use of shared RAM looks implausible.  It requires the multi-bus architecture and multi-port RAM.  Do you have the schematic?
BBC Micro/Master architecture can use only one co-pro.  There are several options: 6502 (upto 4 MHz), z80 (upto 6 MHz), 6809, 32016, 80186, 68000, ARM1, ...  So the main processor is always 6502 at 2 MHz (it is the fastest 8-bit PC in the standard configuration).  So the fastest 8 bit configuration is 6502 @2 MHz and 6502 @4 MHz.
Two z80 are faster than one but it is just a theory.  We need special parallel codes to use the advantage of the several processors.  Almost all program will use only one processor.  Several processors gives a big advantage only for multitasking.  I could recommend your PC for SymbOS. :) So with my demo only the power of one CPU maybe used.
6502 to z80 performance ratio is discussed a lot of times.  I have the evidence of US game programmers from 80s - generally 6502 is 2.2-2.4 times faster.  I have my own researches (e.g., XLIFE-8) which show the same ratio.  However my mathematical demo depends heavily on division where z80 may show better performance (up to 1.7) so with my demo 8 MHz z80 maybe faster than 6502 @4 MHz.
I can give a link to BBC Basic benchmark.  This Basic is ported to z80, 80x86, ... - almost everywhere.  IMHO it is the best 8-bit Basic.  The results show performance of 6 MHz z80 with this Basic - have z80 second processor? please run this for me! - stardot.org.uk, so this z80 performance is close to 6502 at 2.46 MHz that gives 6/2.46 ≈ 2.44 ratio.

TFM

#64
Well, I know two other guys having the same Genie IIIS in Germany. To one I still have contact, he also got two Z80 with 8 MHz. The machine was a high end computer of course, not a classic home computer. But the seem to have produced a decent number of them. The problem is just that information of the 80ies / 90ies got very badly conserved, so today it's hard to find.

Quote from: litwr on 09:03, 04 September 16I could recommend your PC for SymbOS. :)

No thanks!!! I use FutureOS.  ;D
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

litwr

I've just made a special version for Amstrad PCW.  It will work with Amstrad PCW only.  It uses two methods to calculate time.  One counts 300 Hz interrupts.  Another uses call to BDOS 105.  Both results are printed.  CPM-Box always gives a bit different values.  Sometimes the first value is bigger but sometimes the second value is bigger.  The difference is small.  It is below 0.1% for 8000 digits and slightly above 0.1% for 4000 digits.  However it is the emulator results.  I am curious about the hardware results...


Prodatron

The fastest mass-produced 8bit machine probably is the MSX TurboR. The R800 runs like a 30mhz Z80. There is always the discussion if it's already a 16bit CPU but it still has an 8bit data bus and behaves like a Z80, the whole machine is still 8bit based in total (not compareable to e.g. the Apple IIgs). Whats about the PcW16 with its 16Mhz Z80?

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

Audronic

Quote from: TFM on 19:11, 03 September 16
There is also the ability of using Newdos-80 and other stuff related to TRS computers.
Hi TFM
That is where came from. The TRS-80 world and Newdos 80, before i came across to the Amstrad world (Both Z80 Based).
Thanks for the memory.

Ray
Procrastinators Unite,
If it Ain't Broke PLEASE Don't Fix it.
I keep telling you I am Not Pedantic.
As I Live " Down Under " I Take my Gravity Tablets and Wear my Magnetic Boots to Keep me from Falling off.

TFM

Quote from: Audronic on 11:16, 06 September 16
Hi TFM
That is where came from. The TRS-80 world and Newdos 80, before i came across to the Amstrad world (Both Z80 Based).
Thanks for the memory.

Ray


That must have been a cool world too, I just got in contact with it relatively late. There were some real great Tandy / TRS computers (I still have a color genie with tape deck and memory expansion, free to a good home in 8 months). The company Trommelschläger made compatible computers called them Genie I, II or II. The mode IIS actually had an ECB bus. I saw it once, pretty neat.  :)
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

litwr

#69
Hi, I mean the computers of classical 8-bit era which is ended to 1987-88.  So MSX turbo R is out of competition.  However R800 is very good. :) But Japanese were always a bit late.
There is a video which runs my demo with the fastest z80 for today at Acorn Atom. ;)
https://www.youtube.com/watch?v=wlcGm8DSo6o&feature=youtu.be  :D
Quote from: Prodatron on 10:00, 06 September 16
Whats about the PcW16 with its 16Mhz Z80?
It is interesting to test it! :)  But this is very rare stuff...

TFM

#70
Quote from: Prodatron on 10:00, 06 September 16
The fastest mass-produced 8bit machine probably is the MSX TurboR. The R800 runs like a 30mhz Z80. There is always the discussion if it's already a 16bit CPU but it still has an 8bit data bus and behaves like a Z80, the whole machine is still 8bit based in total (not compareable to e.g. the Apple IIgs). Whats about the PcW16 with its 16Mhz Z80?

Can you make some tests in reality to see "how fast" the TurboR is compared to f.e. the CPC. Just some Z80 routine maybe? That would be really interesting.

The PcW16 is a good point, but it doen't contain an real Z80, it's more like a fully Z80 like custom chip (take a look at the PCB). That's fine of course. But what I don't remember is, if it had wait states? I assume not.

Aside of it we also got the RT280, which hat a Z280 CPU running at 12,5 MHz (that's what I saw), but there was also an 25 MHz option (that's what I never saw). However the series of the RT280 was not very big, maybe only a few hundred.
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

litwr

R800 is about 4 times faster than z80 at the same frequency and it has a bonus of hardware multiplication instruction.  R800 maybe more than 10 times faster for 16 bit instructions.
Just compare data at the sheet Z80 / R800 instruction set
You may also look for my demo results at π :)
Amstrad CPC is about 8 times slower than this advanced MSX computer with this demo.

Prodatron

#72
Quote from: litwr on 19:06, 06 September 16
R800 is about 4 times faster than z80 at the same frequency and it has a bonus of hardware multiplication instruction.
Yes, because most instructions only require 1 cycle. As it runs at 7,xx MHz it should be like a 30MHz Z80.

EdoZ and me developed a benchmark tool for SymbOS to compare the supported platforms more or less in a 1:1 way.
Here are some screenshots with the results:
SymbOS MSX multitasking operating system - help needed! | MSX Resource Center
For the CPU I created three different tests:
- simple instructions: NOP, ADD A, etc...
- complex instructions: EX (SP),HL, if I remember correctly; the goal was to have a lot of memory access within only one short command as well
- 16bit instructions: ADD HL,??
The results are really interesting. You should compare the second screenshots for each platform ("score details"). Here you can see in a good way, how the R800 behaves compared to the Z80 for different types of commands, and you can also see, that the CPC is really faster than the MSX2 regarding the CPU (the total average speed is usually faster on the MSX2 because of the VDP/hardware blitter etc.).
The Enterprise is again different, as it runs at real 4MHz, if the code doesn't run inside the video ram page (a little bit like "fast" and "chip" ram on the Amiga).

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

robcfg

If I remember right @TFM , @Habi and myself, we have PcW16.


So, if we find a way to run your test code on them, we'll do it gladly.

Edoz(MSX)

Quote from: Prodatron on 20:56, 06 September 16
Yes, because most instructions only require 1 cycle. As it runs at 7,xx MHz it should be like a 30MHz Z80.

EdoZ and me developed a benchmark tool for SymbOS to compare the supported platforms more or less in a 1:1 way.
Here are some screenshots with the results:
SymbOS MSX multitasking operating system - help needed! | MSX Resource Center
For the CPU I created three different tests:
- simple instructions: NOP, ADD A, etc...
- complex instructions: EX (SP),HL, if I remember correctly; the goal was to have a lot of memory access within only one short command as well
- 16bit instructions: ADD HL,??
The results are really interesting. You should compare the second screenshots for each platform ("score details"). Here you can see in a good way, how the R800 behaves compared to the Z80 for different types of commands, and you can also see, that the CPC is really faster than the MSX2 regarding the CPU (the total average speed is usually faster on the MSX2 because of the VDP/hardware blitter etc.).
The Enterprise is again different, as it runs at real 4MHz, if the code doesn't run inside the video ram page (a little bit like "fast" and "chip" ram on the Amiga).

Ah yes! This was very interesting to see indeed! As at some points the CPC was faster than a standard MSX but on other points it was visa versa. Cool thing is that you could really compare different home computers as they were running the same OS.

I recorded a movie of it some while ago on a low spec. MSX


Powered by SMFPacks Menu Editor Mod