But maybe we can already discuss about an Enterprise port. I would like to know some data about the EP:
- what are the bankswitching possibilities? In which ways can the Z80 access more than 64K?
- what are the screen modes/resolutions? How is the video ram organized and where in memory is it placed?
- are there standard floppy drives and file systems existing?
- are there emulators for the Enterprise available? Do they contain a monitor/debugger?
In any case I will try to organize an EP and maybe a EP-SymbOS could be possible in the future :-)
But maybe we can already discuss about an Enterprise port. I would like to know some data about the EP:
- what are the bankswitching possibilities? In which ways can the Z80 access more than 64K?
- what are the screen modes/resolutions? How is the video ram organized and where in memory is it placed?
- are there standard floppy drives and file systems existing?
- are there emulators for the Enterprise available? Do they contain a monitor/debugger?
And good to know, that the emulator has a debugger, too (ok, just a small one).
What OS are you using for the development?
Quote from: "MrPrise"What OS are you using for the development?
Currently I am using Windows XP.
If you would like to try my emulator please let me know and I will revamp it because Im currently working on its new UI which is not working yet.
This offer is stand for anybody else too who use Linux, of course.
Ok. I'm going to make a simple website for my emulator and I will inform you if there is any progress. I can quote Depeche Mode: "It's just a question of time" ;-)
Quote from: "MrPrise"Ok. I'm going to make a simple website for my emulator and I will inform you if there is any progress. I can quote Depeche Mode: "It's just a question of time" ;-)
Thanks, and please note that all we need is the source ("use the source, Luke") the website can wait :)
I bought a EP64 some days ago.
Is it possible to order a memory expansion and/or a disc drive somewhere?
LBA is limited to 128GB (2 ^ 28 * 512). But hey, who cares! :)
Wow! When do you think this card will be available?
If I am able to extend my EP64 (I bought it on ebay-UK) with more memory I will buy two cards for sure. I think today an IDE interface (+more ram) is one of the most important extension for an 8bit machine!
Currently under development the Enterprise All In One Interface. This is same type thing as the SYMBiFACE, it will be contains IDE interface, RAM and ROM extensions and etc.
Any idea, when it could be available? This year?
Btw, what kind of mouse can be connected to the EP?
like the IDE interface (not the SD-card one sadly)At application level no difference. Read/write LBA sectors :-)
At application level no difference. Read/write LBA sectors :-)
Yeah, but SymbOS may require hardware level access for its drivers and not via EXDOS functions?Both ROM have a direct access function (like as DISKIO in the EXDOS for the floppy), and also can be extended if something special needed for the SymbOS.
@gflorez: Good to hear about new hardware expansions for the EP! Are these still available? Or emulated? I am probably not up-to-date regarding information about what's going on in the Enterprise hardware scene. But this is very interesting! Maybe you have some information and/or links to current projects and the availability? Would be cool! Oh yes, SymbOS can't run with the Enterprise CPC emulator, as it doesn't use the CPC OS at all and requires 128KB or more. But porting SymbOS to the EP shouldn't be very difficult. The graphics can be configured 1:1 like on the CPC and the memory mapping is like on the MSX and PCW. So there is only some work left for writing device handling (keyboard and stuff like that, and mass storage devices).
Both ROM have a direct access function (like as DISKIO in the EXDOS for the floppy), and also can be extended if something special needed for the SymbOS.If the direct access function doesn't require any special environment variables etc. at fixed places in memory it could work (SymbOS is a complete independant operating system, removing everything else in memory while booting). Usually the SymbOS mass storage device drivers access the hardware directly, that was also my plan for the Enterprise.
Anyway need to know more about how works the SymbOS then possible thinking about the best way.
Thanks for the information! Do these SD card extensions require the original ExDos card? (these are so terrible rare...)
SymbOS supports FAT12, FAT16 and FAT32 by itself, so there are no problems with any partition size.
@lgb: So it seems that it's best to port SymbOS to the Enterprise as soon as possible :)
If the direct access function doesn't require any special environment variables etc. at fixed places in memory it could work (SymbOS is a complete independent operating system, removing everything else in memory while booting). Usually the SymbOS mass storage device drivers access the hardware directly, that was also my plan for the Enterprise.
SymbOS will use EXOS probably only for startup ? After that, EXOS will be erased from memories, like the FF system segment, or such ones ?
, they have quite different scopes.
I think the best thing if the EXOS still accessible under SymbOS.
I think the best thing if the EXOS still accessible under SymbOS. Can be opened EXOS window like as EGI :-)
Then normal Enterprise programs can be started from SymbOS file manager.
Warm reset feature also only can be used when the system segment preserved.
If this is only work with memory expansion, don't problem. Todays very easy add megabytes to the Enterprise :-)
Do you read what I'm wrote? :oops: see the word: IF :twisted:
:help maybe could run ...
but :dir will interfere with the hardware device handling of SymbOS ... so ... probably such thing is not easy ...
Still I can't see the advantages especially compared the difficulties it would mean to implement this.
Yes, probably it is the closest to the truth ... :)
One intersting though VERY MAD project: implement a new, EXOS which runs as a SymbOS application
When my Music Box Player play music whil you write your program in IS-BASIC, then the EXOS are mono or multi tasking? :-)
Anyway typing DIR in EXOS window not to important function :-)
The most important are the warm reset, and possible to start "legacy" Enterprise programs. For do this just needed to preserve the EXOS allocated memory. With lot of memory don't problem.
It would be some kind of OS virtualization, isn't it ?
SymbOS host EXOS guest ... :)
I think running MS/DOS commands in the CMD.EXE window is virtual on win98 and up.
You are right, SymbOS is really an OS, on the other side EGI is like WIN31, a front-end(win31 worse, as
EGI doesn't make pretensions of be an OS) .
and this is the first result:Wow! :smt038
After lgb was showing me his impressive "hack"-port of SymbOS for the Enterprise, he finally convinced me to begin the Enterprise
port right now! So during the last two days I started to explore the fantastic world of this very cool Z80 machine with lgb's great help! TBH I am really impressed again!
The next step is to port the kernel, with which I will start now.
@lgb: Thanks a lot again for your brilliant help!!
and this is the first result:
In the Hungarian SymbOS topic we make a long brainstorming about how possible run the SymbOS on the Enterprise.Ah cool, I have to read the 10 pages now with the Google translator! :)
One most important question the memory paging:That's correct!
If I understood right the documentation: because the limited features of CPC the memory paging done by 64KB blocks. Only exception the first (bank 0) which are can mixed 16K segments of other banks. This bank is used by the SymbOS kernel.
The memory paging can be controlled with one I/O port.
It is right?
But how working SymbOS paging on 4x16K paging machines? If I know right the MSX and PCW also use this paging method. The paging routine have a table for each 64K banks for which 4 value needed to send to the 4 paging ports?It just "simulates" the CPC banking configurations. So the paging routine checks, which mode and which bank is required and OUTs the proper 16K block numbers to the 4 I/O ports. So even the MSX and the PCW memory is separated in 64K banks.
Because the Enterprise can be expanded very flexible, many different expansion exist, this means many different address locations. We think the best way at the boot the SymbOS loader ask the RAM list from the EXOS and fill up a memory banks table with the segment numbers. Only problem if it is problem: this is need a 16x4=64 bytes table. Is a enought space for this in SymbOS kernel? Or already exist because the MSX/PCW?SymbOS already has a memory allocation table for up to 1MB with 256byte "pages". 1MB currently is the maximum, as SymbOS only supports 20bit addresses. So if ram expansions up to 1MB would always be located in the upper 1MB area (blocks #c0-#ff) that would work fine. I wonder if this is the case? (lgb already mentioned, that this is true).
One more question: can be support more than 16 banks = more than 1024k memory? Todays very easy to put megabytes to Enterprise :-)Unfortunately not yet. It would require huge changes in parts of the kernel, and an alternative set of memory functions, as the current ones are limited to 20bit (16+4). 1024K should be enough for everyone :D :D
Sorry about "badgering" you too much, but it seems it helped :-)Haha, yes, it really helped! :D
How hard is to port the kernel? As far as I imagine, since it's microkernel, it's not so much hardware dependent (as those machine dependent components resides in other "processes" like video manager, etc, not the kernel itself), but maybe mainly the memory layout/paging and interrupt handling which is the major work of porting just the kernel, I mean.Exactly, it's only the memory mapping (which is a little bit work) and the interrupt handling (no work at all), which has to be modified!
So my PS/2 hardware mouse interface will be compatible (in the end) with the mouse.xr, and PAINTBOX and EGI will be usable with my PS/2 mouse interface.That sounds interesting! The mouse.xr is the standard mouse for the EP?
But I would like my PS/2 mouse interface hardware to be compatible with SymbOS, too.
Could you, please give me some information how I can make my mouse hw compatible with SymbOS ? Through what software interface can I do that ?
What kind of software driver have I to write for beeing compatible with SymbOS ?
Probably SymbOS will not want to use the mouse.xr interface managing its mouse, will it ?
Or are these questions too early in this phase of the porting progress ?
SymbOS already has a memory allocation table for up to 1MB with 256byte "pages". 1MB currently is the maximum, as SymbOS only supports 20bit addresses. So if ram expansions up to 1MB would always be located in the upper 1MB area (blocks #c0-#ff) that would work fine. I wonder if this is the case? (lgb already mentioned, that this is true).
That sounds interesting! The mouse.xr is the standard mouse for the EP?
I would like to support the 1 or 2 most important EP mouse devices in SymbOS.
That sounds interesting! The mouse.xr is the standard mouse for the EP?
I would like to support the 1 or 2 most important EP mouse devices in SymbOS. So currently I am free for anything. And it's a good timing for the question, as the "Device Manager" of SymbOS (hardware specific stuff) will be ported soon.
So EP almost does not have a mouse, at all.
Say, 3 people will have NEOS mose and 7 people will get a PS/2->NEOS(MSX) mouse converter to their boxsoft mouse interface ... and done ... :)
Well at least for people want to see a quick demonstration for SymbOS/EP128, my JavaScript based Enterprise emulator - JSep - can emulate boxsoft mouse. So the number of people can be increased then.
Now I did the first step and ported the low-level-screen routines to the EP, which was of course very simple, as I only copied the CPC routines and optimized the line jumps.
and this is the first result:
[CU,
Prodatron
So if ram expansions up to 1MB would always be located in the upper 1MB area (blocks #c0-#ff) that would work fine. I wonder if this is the case? (lgb already mentioned, that this is true).No! The continous memory are the rare exception, not the rule!
The most popular expansion the MICROTEAM type EXDOS (http://gafz.enterpriseforever.com/Galery/Bovitmenyek/Picture/EXDOS_Microteam-ISS4~1.jpg) which have a 512K RAM at 40-5Fh.
Conclussion: hard to find two same Enterprise configuration
I think the mentioned table solution is the best anyway not because only this reason but because an "EXOS friendly" version later can have also the "problem" that some of the memory area is cannot be used by SymbOS. Maybe ...Yes, the EXOS friendly version will be the next suggestion :-)
And the index itself within the table is linear then at least, and we can say it is maxed at 1Mbyte area but the values within the table itself are not.If 1M the max then 64 bytes table enought.
EXOS can handle this ... and SymbOS have to handle this, too ... haven't it ?This is what we suggest :-)
SymbOS have to detect memory as well, how EXOS or Zozosoft's speed ram test does it ...Most easy way: the loader program ask the EXOS at the boot.
Most easy way: the loader program ask the EXOS at the boot.
I do not know ... I am not sure ... but I'm sure, that EXOS is not a BIOS ... It can have memory resources allocated ...I'm sure!
FF segment is always allocated by EXOS, and can be others, too ...Yes, but you also got it as shared segment.
and the interrupt handling (no work at all)Lgb wrote: only every 6. IRQ used from the 300Hz CPC interrupts, then only 50Hz IRQ needed. It is already done by the Nick.
Oh ok, after some more thoughts I think the slow way is the better one. And such a lookup table shouldn't require too much more additional time...
lookup_table: ;256byte aligned
db x,x,x,x,x,x,x,x,x,x,x,x,x,x
;a=bank (0-14)
LD (patch+1),a
patch:
LD a,(lookup_table)
;a=first 16K block
Oh ok, after some more thoughts I think the slow way is the better one. And such a lookup table shouldn't require too much more additional time...Add two RLCA then full 64 bytes table can used!
lookup_table: ;256byte aligned
db x,x,x,x,x,x,x,x,x,x,x,x,x,x
;a=bank (0-14)
LD (patch+1),a
patch:
LD a,(lookup_table)
;a=first 16K block
I simply do not understand why this paging stuff so important ...The kernel and the applications are running in different memory banks.
Add two RLCA then full 64 bytes table can used!It depends on the remaining free bytes for the kernel area... In this case I would even save two RRA :) as currently I am doing
If you want I can write routine for the loader program which are allocate the memory and fill up the lookup_table.
I am really not sure if eg ZT stores the time from RTCZT write the RTC time to the EXOS time variables.
I have a quick question again regarding memory configuration:
- I am now planning to put bank 0 to #f8,#f9,#fa,#ff
- on a standard EP128 bank 1 would be #fb,#fc,#fd,#fe and all additional banks can be anywhere
Now my question:
- what's about EP64 machines, which are expanded to 128K or more? Do they always have RAM at #f8-#fb or can it by anywhere as well, while #f8-#fb isn't available?
I am only asking because the 16K blocknumbers for bank 0 are hardcoded in the code for optimization. If I have to be flexible here as well, I will add a patch routine during the initialization.
Regarding RTCs, are there different ones existing for the EP?Only one type, using MC146818P compatible RTC chip (which are also used on PC). But can be located on different I/O ports, but this is can be setuped, but I think the autodetect also not to be a hard problem :-) (my clock program write to the CMOS memory and verify it, if ok then the clock chip exist)
Sure you will loose some seconds after several floppy disc accesses, but that shouldn't be too bad.I think if you also use the Dave 1Hz IRQ for clock, then no problem.
I am now planning to put bank 0 to #f8,#f9,#fa,#ffAt the EXOS compatible mode the FFh needed to be preserved
- what's about EP64 machines, which are expanded to 128K or more? Do they always have RAM at #f8-#fb or can it by anywhere as well, while #f8-#fb isn't available?Can be at anywhere. Most of expansions developed for the EP128 then don't make F8-FBh area.
Ok, good to know. The 16K blocks of bank 0 can now be located anywhere :)Great! :smt038
When somebody writes an application to SymbOS (I suppose they can use C or C++), what are the limitations of the application program ? In terms of memory or such ...Prodatron has told me over the last few days about the Enterprise port, so I've just re-signed into the forum. My name is Trebmint and I'm the coder of something called symstudio, which is a PC based IDE for symbos. basically it offers the simplest way to develop an application. The project is on going, but in the nest few weeks a major upgrade will be released.
When I wrote programs in C to EP, the memory was consumed too fast by the compiled C program ... With SymbOS can I use 256K program code or such ?
Zozosoft already made his EP to work with a Z80 at a clock of 10MHz.
But it is a newer Z80 what Zozo had to use achieving this.
And unfortunately this newer Z80 cannot work with the undocumented instruction set of the original Z80.
Is it impossible to manage SymbOS not using undocumented instructions ? 'Cause in that case, it can be running on a speed X2.5 of the original EP ...
Prodatron has told me over the last few days about the Enterprise port, so I've just re-signed into the forum. My name is Trebmint and I'm the coder of something called symstudio, which is a PC based IDE for symbos. basically it offers the simplest way to develop an application. The project is on going, but in the nest few weeks a major upgrade will be released.
I created a few videos many months ago, but hopefully this will give you a little idea of what Symstudio does. Basically its a form editor, media creation tool with an assembler and Basic language built in.
https://www.youtube.com/watch?v=GqEjBHgdL_A (https://www.youtube.com/watch?v=GqEjBHgdL_A)
As for memory. Applications can only be 64k, but the data can be 1Mb in size if you choose
Better use a eZ80
Zozosoft already made his EP to work with a Z80 at a clock of 10MHz.It is not fully true!
But it is a newer Z80 what Zozo had to use achieving this.
https://www.youtube.com/watch?v=GqEjBHgdL_A
As for memory. Applications can only be 64k, but the data can be 1Mb in size if you choose
It is not fully true!
10MHz working with standard Z80, just replace the old Z80A with a new one which are produced for 10MHz (Z84C0010PEG)
It is a another project for a Z180. (And the final goal a switchable Z80/Z180 turbo system :-) )
And what about that suggested eZ80 thingy ?Can not used because it is have own I/O ports which are conflict with the existing I/O port in the Enterprise. It is also true for Z380. Only Z180 can be placed to Enterprise (which are promised to the next Enterprise model more than 25 years ago...)
Can not used because it is have own I/O ports which are conflict with the existing I/O port in the Enterprise. It is also true for Z380. Only Z180 can be placed to Enterprise (which are promised to the next Enterprise model more than 25 years ago...)
So (how you read) Z180 is knocked out by the undocumented instructions of the SymbOS, too ...Yes :-(
Have we a 10 MHz solution already with undocumented instruction set working ?Yes.
That looks very cool on the videos,No the website has been gone for some years. It hopefully will be back with a redesign of the symbos site very soon. And yes it 100% uses the Symbos API's where it can, but also has its own library of what I call SymBasic. Apps written in Symbasic are pretty quick. Not as quick as pure z80, but logic & loops etc are 5-10x faster than you'd get from a normal 8bit basic interpreter. I'm pretty confident that the final version will be as quick if not quicker than any C compiler you know on a z80. But you can mix and match between symbsic and Assembler anyway if you need 100% speed. And considering that the symbos API does most of the work the speed difference isnt that noticable anyway.
but unfortunately the Symstudio's webpage does not work for me ...
Anyway ... Is the API used by Symstudio the API of SymbOS, too ? So with Symstudio somebody calls SymbOS APIs directly, or has Symstudio its own API to its own library ?
And yes it 100% uses the Symbos API's where it can, but also has its own library of what I call SymBasic.
Cool, cool, cool ... or straight insane ... :)They are hobby projects I guess. Symstudio exists because the first time I saw Symbos I wanted to support it, as in my opinion it is probably the most interesting and cool 8bit project of the past 20 years. I think a number of people are now fairly determined that symbos will keep growing, both in the hardware it reaches and uses, and in the number of apps which appear over the next year or two.
Anyway ... what is the purpose of this Symstudio or even the SymbOS ?
Are these merely hobby projects ? Or studies or what are they ?
Cool, cool, cool ... or straight insane ... :)
Anyway ... what is the purpose of this Symstudio or even the SymbOS ?
Are these merely hobby projects ? Or studies or what are they ?
SymbOS is a full grown operative system made similar to Microsoft Windows but running on a tiny 8 bit 4mhz Computer.
It can have two or more apps working at the same time, full coloured hi-res screen, mouse GUI and has almost all the tricks and goods that have the OSes of the big computers. Even it has becoming a microcomputing standard as in shortly it will be in three different systems. But totally free...
But the most important thing concerning us, SymbOS works on MSX or CPC ignoring their original operative systems, aspect that will change in the EP , as seems Prodatron wants to integrate EXOS to the max, asking advice to all our "EP wise men".
And all this is happening right now...
About Symstudio it is a platform for PC that permits you to compile apps for SyimbOS in a comfortable and easy environment.
They are hobby projects I guess. Symstudio exists because the first time I saw Symbos I wanted to support it, as in my opinion it is probably the most interesting and cool 8bit project of the past 20 years. I think a number of people are now fairly determined that symbos will keep growing, both in the hardware it reaches and uses, and in the number of apps which appear over the next year or two.
Bank 0: 3 any segment + one video segmentYes, this is exactly how it works now. The 64 byte table is currently not planned, as it would be very unoptimized in some cases. Banking occures quite often, not only during task switching, but also within tasks, when it accesses other memory. As an example, if the GUI process (called "Desktop Manager") is rendering a form it does multiple bank switching for each control inside the form: General data and text/graphic data maybe located in different ram blocks. The current EP solution is about as fast as the MSX version, and that's really fine :) I hope, the requirement to have at least single continous 64K areas is ok for nearly all ram expansions.
Bank 1-15: any continous 64K areas
I hope, the requirement to have at least single continous 64K areas is ok for nearly all ram expansions.Yes, it is good for about 99.9% of expansions :-)
Yes, it is good for about 99.9% of expansions :-)I am glad about this! :)
The 3 segment of bank 0 needed to continous 48k, or can be a really any segments?All 4 segments of Bank 0 can be anywhere (but segment 4 has to be video ram, so #fc-ff).
All 4 segments of Bank 0 can be anywhere (but segment 4 has to be video ram, so #fc-ff).And on 128K FB-FEh will be the Bank 1, and F8,F9,FA,FF the Bank 0?
I need a small "Enter" key for SymbOS to simulate the 2nd mouse button (first mouse button is ALT+Space, second is ALT+Enter). "Enter" is usually located right to the space key.I think ALT+ENTER (EP ENTER :-) ) also will be good.
The big key, which is named "Enter" on the EP is usually called "Return" on other computers:
Both SPACE and ENTER not used for any plus function with ALT in normal Enterprise mode.
"Pause" will be used for F9 and "Stop" for F10.
How I see CPC has no ALT at all ... so with ALT you can double the EP keys, cannot you ?
I wonder if it would be possible to fake an EXOS environment (RST, replacement memory allocation and video and editor device etc) in the SymbOS app's memory space, and then run IS-BASIC in a SymbOS window! :smt021Interesting idea!
and then run IS-BASIC in a SymbOS window!
Would it be an IS-BASIC related thing, or are we talking about every EXOS based software using the standard EDITOR device or such ?
The ultimate aim would be to provide a full EXOS-compatible environment so you can run any standard EXOS program. But just IS-BASIC would be a very cool start! Of course anything that fiddles with the LPT isn't going to work, so that rules out a lot of games I guess. :roll:
I wonder if it would be possible to fake an EXOS environment (RST, replacement memory allocation and video and editor device etc) in the SymbOS app's memory space, and then run IS-BASIC in a SymbOS window! :smt021@Bruce, it would be really cool to have your impressive IS-Basic running in SymbOS! :) I am just afraid, that this would fail mainly because of the memory mapping requirements, which LGB already mentioned. We can't introduce additional mapping methodes in SymbOS as otherwise applications won't be plattform-independant anymore. I am currently reading your large QA-thread (http://enterpriseforever.com/hall-of-fame/en-vagyok-a-hibas-im-to-blame/), and I also have to learn more about IS-Basic and EXOS. Maybe it's possible to emulate at least an EP64 environment!
CPM running under Symbos - Sounds like getting a Rolls Royce and fitting it with an engine from a go-kart
If you use emulator then please choose a config with EXOS 2.3Yes, my upgraded EXOS most recommended, also for your real machine :-)
Zozosoft modified EXOSes can be burned to an EPROM replacing the EXOS ROM on the motherboard, or other programs (like WP with Zozo's ram test, for example) can be burned to an EPROM to the cartridge.For the first way needed to open the machine but in this way bugs in the EXOS are also fixed.
Transparent icons and captions are not possible yet.
Colours can be customized. For all the settings please have a look at the screenshots of the control panel:
http://www.symbos.de/apps.htm?3#marke0
Regarding EXOS it seems, that it's quite easy to save its state during SymbOS is running, if your EP has enough RAM. So it will be possible to return to EXOS without a reset. As mentioned before SymbOS is not a cap of any existing OS, it has its complete own multitasking environment.
Maybe it would be the time for me to run SymbOS in an emulator or such ... :)You can try it online here (and probably soon on LGBs emulator, too :) ):
Okay, I probably think of the state saving/restoring calling it "CAP", because a CAP do not have to call EXOS ... so when SymbOS is saving/restoring EXOS, it's a CAP not making a single EXOS call ... :)In this case I agree :)
You can try it online here (and probably soon on LGBs emulator, too :) ):
@Lgb, BTW that was a good idea with the taskbar :)I also wanted to suggest this (different palette for taskbar) :-)
@Lgb, BTW that was a good idea with the taskbar :)
And what about the vertical taskbar ? :)Then you can't use different colors.
And what about the vertical taskbar ? :)That's the reason why there is no vertical taskbar :mrgreen:
And with this different taskbar palette option, will SymbOS get an EP specific control panel item ?Yes, I will add a button "taskbar" there for the EP, which opens another colour definition dialogue for the taskbar colours.
How much are SymbOS different around its platforms ?Nearly all apps are not platform specific, so you can run the same EXE file on all systems which run SymbOS.
I also wanted to suggest this (different palette for taskbar) :-)That was a good suggestion, and now it looks already better than the CPC version :) After the first port is finished I wonder how it will look with 360x255...
That was a good suggestion, and now it looks already better than the CPC version :) After the first port is finished I wonder how it will look with 360x255...
Little idea: the taskbar needed to count in graphics screen? I think for 255+taskbar...Very good point! I am sure that's possible! Then we have 360x269 :)
Aren't there a technique, like screen "cutting" on C64, or such, with what CPC can accomplish the different color palette toolbar ?Yes, but on the CPC you have to use interrupt-based hardware tricks, which will crash if the interrupts are locked for a moment (e.g. when reading from disc). So probably not a good idea to use this in a GUI+multitasking environment.
And, in case of the EP: aren't there "fullscreen" apps in SymbOS where that technique would have a meaning, with what Amiga OS can change screens ?Thanks to Nick it would be quite easy to have these Amiga workbench multiscreen effects on the EP. Let's see what the future brings :)
Somebody can drag the different (full)screens in vertical direction, splitting the hardware screen vertically, and of course, the vertically splitted screens can have different palettes, different screen modes, or such ...
Little idea: the taskbar needed to count in graphics screen? I think for 255+taskbar...
fdc_cmd_recal equ #00 ;recalibrate (seek track 0)
fdc_cmd_seek equ #10 ;seek track
fdc_cmd_read equ #80 ;read sector
fdc_cmd_write equ #a0 ;write sector
fdc_cmd_id equ #c0 ;read sector ID
fdc_cmd_break equ #d0 ;abort command
It seems, that writing the FDC driver should be an easy task, if the MSX routines can be used...
Lgb already helped me a lot with the floppy disc controller of the EP. It seems to be (nearly) the same like these from the MSX.
the exact functions of bits on port 0x18 on reading/writing18h write:
and there was some topic about "turbo EXDOS carts" with switchable clocks or so?Turbo switch at 20h, lowest 2 bits select from 4 clock speeds.
Where is the "Motor On/Off" bit?? :)WD177x automaticaly handle this.
http://symbos.cpc-live.com/
Quick answer, WD commands used by the EXDOS ROM:
88h read sectors
E8h read track
C8h read sector ID
A8h write sectors
F8h write track
08h restore
18h seek track
58h step in
78h step out
D0h abort command
18h write:
b0: Drive Select 0 (Drive A: )
b1: Drive Select 1 (Drive B: )
b2: Drive Select 2 (Drive C: )
b3: Drive Select 3 (Drive D: ) at all, 1 will be select the drive
b4: Side 1 Select: 0=Side 0, 1=Side 1
b5: Double Density Enable, 0=MFM 250Kbits/sec, 1=FM 125Kbits/sec
b6: Disk Change Reset, some very early 3.5" drives suport this, praticaly don't used, left at 0
b7: In Use signal, don't used, left at 0
18h read:
b0: Ready signal (pin 34) from the selected drive, EXDOS don't use. Active low.
b1: INTREQ output from WD, Active high
b2: nc
b3: nc
b4: nc
b5: nc
b6: Disk Change signal (pin 2) from the selected drive, at default EXDOS don't use. Active low.
b7: DRQ output from WD, Active high. EXDOS use at all transfer routine, because this is the fastest way check the DRQ (IN A then JP M)
Turbo switch at 20h, lowest 2 bits select from 4 clock speeds.
;### FDCRED -> read sector
;### Input A=sector, HL=destination address
;### Output CF=0 -> ok
;### CF=1 -> A=error code (...)
;### Destroyed AF,BC,DE,HL
fdcred ld b,fdc_cmd_read
call fdcexe
fdcred1 ld a,(fdc_data)
ld (hl),a
inc hl
fdcred2 ld a,(bc)
add a
jp p,fdcred1 ;bit6=1 drq, new byte
jr nc,fdcred2 ;bit7=0 execution goes on
ld d,0
jr fdcres ;go to result phase
;### FDCRED -> read sector
;### Input A=sector, HL=destination address
;### Output CF=0 -> ok
;### CF=1 -> A=error code (...)
;### Destroyed AF,BC,DE,HL
fdcred ld b,fdc_cmd_read
call fdcexe
ld d,0
fdcred1 ini
fdcred2 in a,(fdc_status)
rrca
jr nc,fdcres
rrca
jr c,fdcred1
jr fdcred2
Interesting that most commands need to have bit 3 set (x8h). Does it have a special meaning?It is disable the Spin-up sequence. If enabled the WD177x wait 6 revolutions (=1 second) before the command started.
Some questions:Yes it is always 0. But don't confuse with "disk DD". It is the write encoding method. 40x1x9=180K disk also use Double Density MFM encoding.
- double density: Don't we have usually DD 720K discs (2 sides, 360K/80 tracks per side)? I would probably always set this bit to 0 (I guess SymbOS won't be used to read very old EP discs but those which can be exchanged with a PC)
- DRQ (bit 7) at port 18h is the same like bit 1 of the status register (port 10h), which reports a DRQ? Usually I use the status register to check if there is a DRQ while reading a sector. So I should better use port 18h?It is same, but read from WD STATUS need to additional instructions for check DRQ.
But how do I recognize, if the sector is finished?EXDOS check the INTRQ bit at 18h after every readed bytes.
Do you use the "abort command" for proceeding "Motor on"?EXDOS use a Seek Track command. And check the old and new track numbers, really needed a Seek? If yes then enable 30ms wait bit in the command byte.
On the font settings page I saw chance to load a font file ...
I think maybe EP text 80 font (did you already see that?) nicer like the default font in this emulator config ...
Probably you already was in WP or tried TEXT 80 in BASIC or such ...
Is not that font more stable or readable ? Or probably are many font files for SymbOS already ?
so SymbOS uses quite narrow fonts to have mode chars, not 8 pixel wide
Indeed SymbOS have (?) 640 pixel mode but then you have only a 2 colours only.
As far as I can know from various SymbOS documents, it seems it has its own font format, indeed.
What documents did you find about SymbOS ?Try it :-)
Try it :-)
http://symbos.de/download.htm
I think there is no talking about fonts in those docs.
Ehhh. The key if you try to find something: download all stuffs, unpack ZIPs etc then use grep (or whatever, at least on UNIX systems) to try to find some words. Eg: symbos-doc-develop.zip contains SymbOS-DesktopDataRecords.txt file, and you can find the word 'font' at many places, the format should be about at the end of the file.
use grep (or whatever, at least on UNIX systems) to try to find some words.On Windows: Total Commander ALT+F7 :-)
On Windows: Total Commander ALT+F7 :-)
It is same, but read from WD STATUS need to additional instructions for check DRQ.
From EXDOS STATUS register:
IN A,(C)
JP M,DRQ_ACTIVE
EXDOS check the INTRQ bit at 18h after every readed bytes.
;[...] start execution phase
LD C,#13
LD HL,destination_address
loop INI
check IN A,(#18)
JP M,loop
BIT 1,A
JR Z,check
;[...] do result phase
Would this work?No, because the IN A,(nn) don't set the flags, only the IN r,(C) do it.
List of the EXDOS floppy driver capatibilities:
Another:I wonder how to support the Turbo modes, what different WD-programming they require...
EXDOS card built with WD1770 or WD1772, at 1770 the step rate 0 are the fastest, 6ms. With 1772 the step rate 3 will be faster, 3ms. About 99% of the drives in the world can be used with 3ms, then faster and quiet. (The fastest with 1772 the step rate 2 which are 2ms.) EXDOS have a variable where can selecet the step rate. [...] I think need a Setup option or Configuration windows or something :-) for select step rates and enable/select turbo modes.
No, because the IN A,(nn) don't set the flags, only the IN r,(C) do it.Ah yes! But in this case it doesn't seem to make sense to use IN A,(C) in the 512byte sector loop, as then I wouldn't be able to use INI anymore...?
;[...] start execution phase
LD C,#13
LD HL,destination_address
loop INI
check IN A,(#18)
RLCA
JR C,loop
BIT 2,A
JR Z,check
;[...] do result phase
Is there a reason why they use...I not found :oops:
About the Double Stepping:Good idea! :) What's about reading track 2 instead, as you save some seek time (you will be at track 0, too, for reading the boot sector, so it's not so "far" away)?
When identify the disk, EXDOS read Sector ID from track 8, then check the track number in the readed ID:
=4? then 40 tracks disk in 80 tracks drive, switch on Double Stepping
=8? right disk for the drive, Double Stepping off
=16? 80 tracks disk in 40 tracks drive, report incompatibility error
then use Seek Track command (which also do the Motor On).Does it always use the seek command (for turning the motor on), even if the track didn't change during the last access?
Thanks again for these details!Probably also will work :-)
What's about reading track 2 instead, as you save some seek time (you will be at track 0, too, for reading the boot sector, so it's not so "far" away)?
Does it always use the seek command (for turning the motor on), even if the track didn't change during the last access?Yes, for the Motor On reason. But compare the old and new track numbers, and set a Head Moved flag when the head really moved.
About the Drive E:
This is the RAMDISK on the Enterprise.
On expanded machines in a EXOS compatible mode can be support this, especially because the SymbOS only support 1MB memory, on 1MB+ machines lot of free memory for RAMDISK :-)
It is standard FAT volume, at the boot sector from 100h- stored the segment numbers (each 16K) where the RAMDISK stored. Easy to calculate from LBA sector number the memory location where the sector stored.
The loader program can ask the RAMDISK for the SymbOS driver: get the boot sector of the Drive E: and if succesful then get the first segment number from the boot sector at 100h, and this segment number passed to the RAMDISK driver.
It would be fun to play a network game on different systems together!!! Who know;-)
Because it runs on the CPC, MSX and Enterprise!...and the PCW Joyce :P
.. It would be fun to play a network game on different systems together!!! Who know;-)Yes, network support is a "must have" for the next version.
Does SymbOS have a network API, already ?SymbOS network drivers are planned for the next version. Regarding the hardware check my other post :)
Do CPC and MSX have a network hardware interface, already ?
EP does not have network hardware, yet. Or did not you think of IP networking ?
When possible download beta (or alpha? :-) ) version? I want to see with my eyes :-DI will upload a DSK as soon as this floppy stuff is fully working in the emulator! :)
Wow.. Crazy the taskmanager is running already!!! Enterprise users did you see symbos already in action ?.. Here a small movie I created Las week. Symbos on my msx (http://m.youtube.com/watch?v=-8MOGvumGKI)I think the MP3 encoder need a new hw topic :-)
Here a small movie I created Las week. Symbos on my msx
I think the MP3 encoder need a new hw topic :-)
Hmmm ... that MSX seems powerful 8 bit computer ...
Is that scrolled virtual desktop feature a common one, or MSX specific only ?
(Maybe EP could do that vertically (scrolling) with multi desktop (amiga like dragging of screens/desktops) simultaneously ... :)
I am far from being an MSX expert, but as youtube descriptions says, it's with GFX9000: http://www.msx.org/wiki/GFX9000
First MSX (Philips 8280) is running on 7 Mhz (Z80) Using Sunrise IDE and MP3 decoder
But ... we talking about SymbOS like it supports CPC,MSX and soon EP ... but in MSX it supports such subversions of that hardware, like that cartridge ... and more versions of CPC ... and so ... this SymbOS thing is quite advanced I feel ... so I want to say ... It is even bigger than I thought it is ...
And again the youtube title of the video also tells about the Mp3 decoder which is meant (I think) as a hardware decoder, not software ...I also think. And want to see the details! Enterprise have a stereo sound input at the expansion bus... :-)
I also think. And want to see the details! Enterprise have a stereo sound input at the expansion bus... :-)
But it has to do all the transfer by itself: Reading all data from the mass storage and sending every byte to the MP3 decoder.
Okay, and what about the encoded sound stream ? Does the extra hardware push that to an additional DAC, or Z80 mixes/plays that to some MSX/CPC DAC ?This is probably up to a potential hardware producer, if he provides an external additional jack (like for the MSX) or leads the sound signal into the EP, if this is possible.
EP has 2 channel (left,right) 6 bit DAC ...
SD interface have a memory mapped I/O, and have a fast read mode when the bytes of the sector can be copied with LDIR.That's cool. Using LDI:LDI:LDI:... "raw" data transfer rates of >200KB/s should be possible :)
@Prodatron, What is the trigger when or why you begin to support a produced hardware extension for a supported hardware platform ?For the "mass storage device" drivers (this is everything which can read/write 512byte sectors like floppy discs, hard discs, sd cards or USB storage devices), we have a flexible driver system for the MSX version but currently not for the CPC/PCW/EP version, as hardcoded drivers do usually save some memory. I have no idea if it makes sense to switch to a flexible mass storage driver system for the EP, too, as it requires a little bit more memory and makes booting more complicated.
Or do you (SymbOS) offer HAL or driver interfaces to implement SymbOS drivers for the different hardware extensions ?
And how do these hardware drivers become a part of SymbOS ? Do the driver writers give you versions and you integrate those in the SymbOS distributions ?
For all other stuff you can implement your own drivers for additional hardware on application level.
Prodatron is too modest to say so, but he buys pretty much all the cool hardware and supports it in Symbos. If an Enterprising Enterprise user created an MP3 hardware decoder or Ethernet, prodatron would soon have a driver so it could be used.
unless you're targeting a specific piece of hardware
Yes, I asked the hardware driver questions because I created a PS/2 keyboard interface and now I am creating a PS/2 mouse interface,Its a tricky subject, because if you've made yourself hardware of course you will have to design drivers for symbos to work with them. However those drivers should work with the API so from another coders/users viewpoint they are abstracted from the hardware through an API
and the keyboard is hardware compatible to the EP's internal keyboard, but the mouse will not be hardware compatible to the mouse (the boxsoft mouse interface) what SymbOS will use first -> I will not have a working mouse in SymbOS ... but SymbOS have to have a mouse ... :)
But I understood (as far as I did it well :)), that the hardware support is totally internal to and controlled by SymbOS (except of the mentioned MSX storage part) and not open toward additional hardware developers.
So I have to make a hardware compatible (to the supported EP mouse) PS/2 mouse, or I have to wait till SymbOS will support my mouse, too.
The wide range of hardware symbos works with is one of the totally cool things about it...
Disc access is now working fine! :).DSK? :-) for testing on real machine.
Little note: at 1984 november shipped the first 100 EP64 machine to developers and the press.What a cool timing! :D So I need to hurry up with finishing a full-working version during this month! :P
Now at 2014 november the SymbOS will be a good 30th Birthday surprise for the Enterprise! :ds_icon_cheesygrin:
This missing allocation is what I want to change now for the next step.I can write routine which do it.
But if it's still usefull for you, I can upload a DSK :)Don't problem! I can build any EP configurations :-)
What a cool timing! :D So I need to hurry up with finishing a full-working version during this month! :PAt 1984 december 14 (http://enterprise.iko.hu/articles/PersonalComputerNews09300003.jpg) arrived the first machines to the shops :-)
Hmmm ... that MSX seems powerful 8 bit computer ...
Is that scrolled virtual desktop feature a common one, or MSX specific only ?
(Maybe EP could do that vertically (scrolling) with multi desktop (amiga like dragging of screens/desktops) simultaneously ... :))
Disc access is now working fine! :)
(http://www.symbos.de/gfx/preview/sym-ep-05discworking.png)
Will answer soon regarding mouse support! (currently in a hurry)
It seems there are some MSX users here :) As far as I know, the graphics controllers in MSX computers (TMS9918, V9938, V9958, or maybe even V9900) has own dedicated video RAM and not shared with the CPU. So you need instruct the video chip to do something with the video RAM (afaik there are some "hardware accelerated" operations as well can be instructed?). But if it's true, how can someone play video on MSX when it's always slower to modify the video RAM by video chip ops and not direct video RAM writes by the CPU itself? My question also remains for the rest of a SymbOS like software: without direct video RAM access how this can be implemented at a sane speed? Sorry if I asked something stupid, I don't know too much about MSX machines, really ...Well I'm sure prodatron can illuminate more on MSX video, but as the person who coded the video file creator called symstudio I can say that the video files have fairly small frames... each screen is around 6k and frame per second is on a standard 4Mhz MSX2 about 7-8 and a little slower if something else is processing. Believe it or not the speed of a standard MSX playing 16 colour video is faster than that of a 4 colour CPC, which shows you the power of a VDP chip.
With this way we can convert pictures to the EP like these:And these :-) (http://www.ep128.hu/Ep_Demo/Pic/Interlace3.png)
the main issue is that as a windowed OS, not a fixed full screen palette switching would have bad effects in that say two images/forms could not share the same screen without 1 looking awful.
And I do not know exactly 4 color mode is enough for those nice pictures, or not.The most of them are in 16 colors attribute mode.
The most of them are in 16 colors attribute mode.
Only problem, when the SymbOS objects not aligned to 8 pixel at horizontaly, the 1-7 pixel additional black shadow added.
The CPC is stuck in 4 colours,
What do you think about it?
ld a,x ;select row ofext joy
out (0b5h),a
in a,(0b6h)
rrca ;bit 0 signs if the specified joystick direction was active (0 active, 1 inactive)
jr nc,joyact
a=0-4 Ext joy1 (fire up down left right)Sorry, I was busy most of the last hours, but now I could finally try it on the real hardware:
Many thanks again especially to LGB and Zozosoft!!! You made this possible!
- I have a lot of read-retries when loading from discYes :oops: and using a slow step rate. I suggest the loader ask the defaul step rate (variable 73) and pass to floppy driver.
Oh, and I recognized, that at one machine the RETURN key and the internel joystick is not working. Is the keyboard membrane probably damaged and has to be replaced?Yes, there is a new membrane. (http://www.ebay.co.uk/itm/Brand-New-Enterprise-64-128-Computer-Keyboard-Membrane-by-RWAP-Software-/351216936072?pt=UK_VintageComputing_RL&hash=item51c6292488)
One of my EPs didn't seem to deliver a proper picture at allLook the R202 variable resistor (http://ep128.hu/Album/Pic/EP_alaplap.jpg) at left side the modulator, probably need fine tuning. And also adjustable the RF modulator.
Yes :oops: and using a slow step rate. I suggest the loader ask the defaul step rate (variable 73) and pass to floppy driver.These EXDOS variables can be found here as well?
Your card also have a 1772 then Step Rate 2 suggested.
Put to EXDOS.INI (like as AUTOEXEC on PC):
VAR 73,3
LOAD SYM
[...]
Anyway make a problem when loaded from drive B: because components searched from drive A:
I suggest the loader ask the Default Drive at loading, and pass to the kernel as boot drive, it is the variable 71.
Task manager CPU time calculating will be crazy when CPU speed switched. At 4Mhz idle display about 6% usage, then switch to 6 then about 0%, ok this look good, but when switch to 7.12 or 10 then display 60-70% usage. :oops:Yes, changing the CPU speed during runtime will confuse the measurement of the CPU usage completely, as the CPU speed is only tested once during booting :)
When started 10Mhz, display about 4% at idle, but when switched back to 4Mhz then display about 50-70% usage :oops:
The joystick pointer only move to four directions. Will be better if 8 directions can be used.That is because currently there is only this "emergency mode" for controlling the mouse. This mode uses the usual keyboard routine, which only outputs 1 key at the same time. It will be fixed either with the "mouse mode" or with external joysticks (which is now implemented).
These EXDOS variables can be found here as well?Some are in EXDOS manual (http://enterprise.iko.hu/books/EXDOS-UserManual.pdf) at PDF pages 95-96.
Regarding the Turbo modes I will first try to get the driver working ok on a normal EP. Then let's test again at higher speeds...I guess if original EXDOS routines used then will work on turbo :-)
This mode uses the usual keyboard routine, which only outputs 1 key at the same time.Then possible send switching key codes for the additional directions? For example left,up,left,up,left,up...
1.) is it always the case, that it returns the next free segment with the lowest number?Yes.
2.) page zero (which is at #b0, #0000-#3fff after loading): is it always the case, that only the first 256 bytes (#0000-#00ff) are used for EXOS?It is used from 30h-5Bh.
then it is the System Segment (FFh).Btw, couldn't this even start at #FE or earlier, if there are a lot of additional things loaded?
Btw, couldn't this even start at #FE or earlier, if there are a lot of additional things loaded?The loaded things go for another segments. If open a large video pages with EXOS then possible go out from FFh. But in your situation video pages don't used.
At the end I will implement this EXOS/restore methode as well!My EXIT routine, I use when any error happen while loading program, at exit from program, and also used as "Exit at Warm Reset".
Dynamic memory segment allocation is working! :)
(http://www.symbos.de/gfx/preview/sym-ep-07onemegabyte.png)
Now it supports up to 1MB and can be booted from systems with expanded memory, too.
Joystick support is included, too. Sector routines haven't been fixed yet, so it's maybe better only to try it in the emulator :oops:
Btw, I recognized (thanks to Edoz), that it only runs in the Emulator, if there is a disc in drive A AND drive B... So one more issue with the disc routines.
How can I create a disk image for the enterprise ? If I want to test my own apps. ;)It is a standard FAT12 disks, MS-DOS compatible. You can find tons of programs to do this :-) I using WinImage on Windows.
@Edoz - Symstudio in MSX DSK settings can also be used for the Enterprise. Cool really I have no work to do on that. I will of course set up a compile for Enterprise button to make it look like I'm doing lots of work
YES!!! It works! .. Amazing!! .. I never created something for the Enterprise but Tetris is just working without troubles !!Can we download it? :-)
Can we download it? :-)
I think its really great that Enterprise users seem to be interested in symbos.
Even if its not in a special attribute type byte aligned screen mode :P
Just a idea: Enterprise mode screen saver. At this situation can be used these pictures.
Just a idea: Enterprise mode screen saver. At this situation can be used these pictures.
In this year Saint built very cool memory extensions and vortyex built SD controllers what are as cool and tiny like the former ram extensions.
I saw there is a IDE tab in the enterprise emulator. Is this based on the same principals ?It is my older development, started at about 20 years ago :-)
I never heard about the Enterprise system until Prodatron told me about it.I see flag of Netherlands at your name. This is interesting because I think many Enterprise users at your country, we have many issues of Dutch Enterprise magazines. Look at the collection. (http://enterprise.iko.hu/magazines.htm)
I don't own a Enterprise. (The prices seems sky high on Ebay for me)If you really want one, then I have some spares...
To bad they didn't build-in a floppy drive during that time.The next model planed with built in, but it is never released :cry:
Is this based on the same principals ?
(The prices seems sky high on Ebay for me)
explorer.exe is currently in development so you have to wait. But Tetris is already done.
It is my older development, started at about 20 years ago :-)
Today's it is obsolete, because the SD interface. But if Prodatron have a energy for do it, possible to add driver for SymbOS :-)
However it may turn into a question about wasting memory. What I mean here is the needed memory space for the driver, if the OS is not "load driver from disk" kind. As far as I can see, MSX works with loading SymbOS drivers, but CPC is not. While I tried to disassembly CPC SymbOS, I seen that there are many hw drivers built-in somehow. Which can be a factor if you have the base 128K RAM only. If every drivers are built-in there can be a problem later. But the another side of the problem: having loadable drivers also causing using a bit more memory. Hmmm. The question here is soon (especially for the next SymbOS version which can be even larger maybe) that how realistic to run SymbOS with 128K RAM only. It's not too much to actually work with SymbOS so we can say it will be not enough to even boot SymbOS. But there is some little sound within me saying: "ok, not enough but nice feeling to know it will work _somehow_ even on the good-old base system with only hardware elements produced by the original manufacturer of the machine when it was sold/bought ...". It's even true for the SD driver, as not everybody have it. I am not sure what the strategy of SymbOS for the future versions on different platforms: will 128K enough for every future versions as well, what will be about the "monolithic" and "loadable driver" versions in MSX/PCW/CPC/EP128 .... will they be always different (as like now afaik, that msx uses loadable drivers but not the cpc, I think). etc, etc.On the whole I would assume that's because the CPC is a closed system in that the sound, graphics, fdc are the same on everyone. that's not the case with the 4000 differernt models of MSX. Its impossible to embed something that isnt standard
On the whole I would assume that's because the CPC is a closed system in that the sound, graphics, fdc are the same on everyone. that's not the case with the 4000 differernt models of MSX. Its impossible to embed something that isnt standard
Indeed, it can be a reason, I guess. Just I'm wondering now what about the EP128. Also what about the support of 128K only in future versions of SymbOS.Prodatron is dedicated to every version (I guess unless its a hardware specific version - for say a hires graphics card etc) to be working on base level machine that means 128k. No doubt this will only leave minimal RAM, and you will never be able to launch more than one or two small apps at the same time. However I think its safe to assume that most people will be either in emulator or if using real hardware have upgraded it substantially. Basically speaking symbos is a highly advanced modern OS that even in a basic state requires nearly a 100k. If could be smaller then Prodatron would have done so.
Question about the ROM versions: it is just used for a storage, replace the disk loading, and then data copied to RAM.
Or some parts running from the ROM?
These slideshows would be possible in this mode :)
It's still a Z80, there is no protected mode :P
That means you can use SymbOS for reserving memory and loading data and then patch the IRQ handler at #38 and completely control the machine by yourself.
Nice, only then a SymbOS function would be useful to re-initialize the Nick LPT,
Anyway ... in this way, every platform specific program, game, demo can be possible on the top SymbOS ?
OK, but why do you want to make platform specific sw over the Symbos? The only EP-specific sw, I can imagine in Symbos is an app, that enables to run EP executables (file type 5), and after finish run, the app restores Symbos.
More-or-less I agree, but of course a sound player using Dave is EP-specific after all but not so bad to have :) For other things, fullscreen mode is still useful with some kind of EP specific video modes at _some_ cases at least (eg an image viewer can work as a portable SymbOS app, but can have fullscreen mode to use EP specific video mode to be able to show images in better quality using tricky LPTs etc). Though I don't see it's too useful to have EP-specific things _only_ since then it makes much more sense to write them as an EXOS app and not SymbOS anyway.
Running an EXOS app while in SymbOS can be useful sometimes maybe, though there can be problems, eg "take over the control" over SymbOS when it is not about doing a disk operation etc, as it would be a crash possibility to reprogram WD by EXDOS meanwhile, etc.
About sound. Which sound 'devices' does the Enterprise have ? (or add-on hardware for sound.)
@Edoz - Symstudio in MSX DSK settings can also be used for the Enterprise. Cool really I have no work to do on that. I will of course set up a compile for Enterprise button to make it look like I'm doing lots of work
And I created PT3 player, which are also using AY emulation.Very cool! I wonder if it "only" converts the AY registers to the EP-Dave or does it do more to play PT3s?
Very cool! I wonder if it "only" converts the AY registers to the EP-Dave or does it do more to play PT3s?If you think about 1:1 register conversion then the answer is: do it more.
If you think about 1:1 register conversion then the answer is: do it more.
I used the existing PT3 player code from the net, and AY writes changed to subrutine calls for AY conversion routine, which is developed by IstvanV.
This routine do some calculations for the frequency values, and try to convert the noise usage to Dave noise channel.
The main problem if I know right: the AY have 3 channel, and any channel can play normal sound or noise. Dave have a 3 sound channel and 1 noise channel (all are stereo).
Another problem with the envelopes, AY do it from hw, at the Enterprise no hw envelopes, EXOS SOUND: device do sw envelopes at 50Hz interrupts. This AY emulation routine also try to emulate these in interrupt routine.
I wonder if playing such sounds would only require some clever conversion of the registers to DaveJust a clever conversion. Attached disk image, you can try it :-)
or if you have to analyse the sound module itself to have a good playback on the Dave chip?With this simple conversion not all music will be good. If any one who is more familiar in music things can write analyzer-converter I think will better, but I think this is not too easy task.
Starkos [CPC], Soundtrakker 128 [CPC]If exist available player code for these, then I think easy to add these to my player :-)
Just a clever conversion. Attached disk image, you can try it :-)That's so cool! Great work! Now I have good hope that SymAmp will work on the EP soon, too! :)
With this simple conversion not all music will be good. If any one who is more familiar in music things can write analyzer-converter I think will better, but I think this is not too easy task.
If exist available player code for these, then I think easy to add these to my player :-)The source codes of the Soundtrakker player are lost, but I was able to relocate the existing modules and patch the AY-register routines (e.g. for the MSX). Starkos routines http://www.grimware.org/doku.php/documentations/software/starkos/start (http://www.grimware.org/doku.php/documentations/software/starkos/start) are available!
The source codes of the Soundtrakker player are lost, but I was able to relocate the existing modules and patch the AY-register routinesThis is also enought for me! Can you send the details?
I think enough to insert into SymAmp IstvanV's AY emulator routine, it is the best, I will try to find here, and make a link.There is it. (http://enterpriseforever.com/spectrum-rol/re-spectrum-programok-atirasa-1005/?action=dlattach;attach=7639)
EP plays a sid format, also, but I do not know it's a satandard sid or not,
Yes, and some SID music reach the speed limit of EP, ex Cybernoid2, sometimes become slow, so it would use too much CPU in Symbos.
Is any test version? :oops:
Sorry for not uploading another new version. Unfortunately I was busy during the last few days with "normal" life, but this weekend you will get a new update.
ORG DreamState
.BrushTeeth: EQU #32
.Day
LD HL,SymbosIdeas
LD DE,StoreIdeas
.Sleeping
LD A,(HL)
INC HL
CP Good
JR NZ,Sleeping
LD (DE),A
LD A,(BED)
CP 9
JR NC,GetOutOfBed
INC DE
JR Sleeping
.GetOutOfBed
LD BC,BrushTeeth
LD HL,Toothpaste
LD DE,Mouth
LDIR
...
The full listing has yet to be fully dissassembled
Hi guys, here is another preview of SymbOS EP..DSK? :oops:
So, it is now playable as well on the Enterprise!! You can download it here : TETRIS FOR SYMBOS (http://www.muziekpraktijkconanima.nl/msxorg/tetris.dsk)It is working! :-)
the SymCommander don't use the boot drv as default. I booted from B: but it is started with two A: window and report error...That's an issue and should be fixed soon (a problem on all platforms TBH :oops: )
About the kernel the most strange thing, why froozen on turbo mode? The first preview version run fine, just the floppy driver not working.Is it even freezing without disc access? Or maybe the problem is still the disc access but it happens earlier with the newer version? Currently fixing the up-scrolling and the background picture bug, but then I will hurry up with the disc routines!
Here you can work in it if you want:That's great, thank you very much!
- parts of the disc routines have been replaced with the original ones from the ROM, which Zozosoft published a few pages ago; now I don't have any read/write problems anymore; changes are within preparing sector read/write; I still use INI for reading a sector; if this is still making problems, please tell me; the current solution is a little bit slow, it seems, that it requires some sector interleave; I will have to optimize it...)It is more better, no retry, retry, retry... anymore :-D
@Zozo: Your investigations helped a lot! There were stupid problems with some kernel routines.Very interesting! Tell me more! :-)
Don't know if it solves your problem with your memory expansion?It is don't change anything :-(
Additional Todos:
- switch between "mouse" and "keyboard" mode with INS regarding the internal joystick
- SD card interface support
Little note, I see in the code::ds_icon_cheesygrin:Code: ZiLOG Z80 Assembler
024D 11 B0 01 LD DE, 01B0 0250 3E 00 LD A, 00 0252 F7 01 EXOS 01 0254 B7 OR A
EXOS already set the flags with OR A, then not needed do it again in the program code.
And XOR A instead LD A,00 one bytes shorter :-D
I wasn't sure, what channel number to use.When the machine code (header 5) program started all channels are closed, then free from 0 to 254. The 255 reserved for the Default Channel which number is stored in EXOS variable 4.
I found it a little bit strange that the program has to define the channel number, not the "open channel" EXOS function
working on the CPC !!!
Cool background :D
Boxsoft mouse support is 90% implemented :)
Thanks again especially to LGB and gflorez. I have to add an autodetection (exactly the same like on the MSX) now and mouse button test. You will be able to use it in LGBs' JSEP Emulator soon!
Nice, but a real hw test is very important [...] I just write this here, so people with the "real thing" should be keen enough to test if it is available :)Somehow I am quite sure, that it will run on the real hardware, too :)
I was quite sure that no one will use 3 or 4 floppy disc drives today anymoreIt is reported by user, who use! See the config. (http://www.bubus.freeweb.hu/szamtech/Sajatgep/Sajatgep01.html) :-)
(I am just curiouse: Is it more typically to have an HxC [with Zozos image selector :) ] or to have 4 drives connected to an EP?)I'm in both team :-) And where to count when two real drives and two HxC emulated drives used? :oops:
Can anyone test this on the real hardware?Working :smt038
ld b,8
call mosdly0 ;delay
[...]
;### MOSDLY0 -> do delay
mosdly0 nop
nop
nop
dec b
jr nz,mosdly0
ret
(part of the original source)Seems that this has to be modified for faster EP machines?Yes.
Does EGI have the same problem?Yes.
Boxsoft mouse support (including mouse detection) seems to work now, please check the attachment.
Mouse or joystick have to be connected at "control 1".
You can try it here with JSEP:
http://ep.lgb.hu/jsep/demo.new/?disk=http://www.symbos.de/files/SymbOS-EP-Full.dsk (http://ep.lgb.hu/jsep/demo.new/?disk=http://www.symbos.de/files/SymbOS-EP-Full.dsk)
(type LOAD"SYM" after the EP booted)
I've just noticed that SymbOS seems to freeze (eg mouse pointer does not move anymore) after eg having out of memory error, or when I start SymShell (with more memory given - so it's not out of memory error in that case!).Yes, I noticed this in JSEP, too. Sometimes it happens when moving the mouse inside the start menu, sometimes when starting SymShell, but it doesn't depend on the amount of Ram. A small part of the system is still working, at least the idle process is running, which I can see when pressing the "Z80" button. But most other stuff is freezing. As this problem never occures in Ep128Emu I wonder if it is a JSEP-specific problem or a problem with the mouse routines.
Also I guess it would be nice to create an EXDOS.INI file, so loading would be automatic. Also appending the URL above with &autostart=yes starts JSep emulation without clicking on the "Run" button, just clicking in the URL would be enough then.What do I have to write into the EXDOS.INI file? Just
What do I have to write into the EXDOS.INI file? JustECHO Starting SymbOS...
LOAD"SYM"
or something else?
Very nice! What would EP users prefer? The autostart or the F1 option?Both :-) (Then put LOAD START to EXDOS.INI)
Yes, I noticed this in JSEP, too. Sometimes it happens when moving the mouse inside the start menu, sometimes when starting SymShell, but it doesn't depend on the amount of Ram. A small part of the system is still working, at least the idle process is running, which I can see when pressing the "Z80" button. But most other stuff is freezing. As this problem never occures in Ep128Emu I wonder if it is a JSEP-specific problem or a problem with the mouse routines.
What do I have to write into the EXDOS.INI file? Just
LOAD"SYM"
or something else?
But is it possible to cancel the autostart?Don't insert disk to drive :-)
It's possible of course (JSep problem), I am just curious to fix the problem with JSep if it turns out as an JSep program. However since you haven't noticed that with ep128emu, I guess it should be ...Is it possible to remove mouse emulation and add external joystick emulation instead for control port 1? (e.g. with the Num Pad keys 4/6 left/right, 8/2 up/down, 5=fire)
Have you done any modification with the http://www.symbos.de/files/SymbOS-EP-Full.dsk recently?
http://ep.lgb.hu/jsep/demo.new/?disk=http://www.symbos.de/files/SymbOS-EP-Full.dsk&mem=1024 (http://ep.lgb.hu/jsep/demo.new/?disk=http://www.symbos.de/files/SymbOS-EP-Full.dsk&mem=1024)
This always produced the freeze when SymShell is tried to be started within JSep (just _after_ SymShell is loaded and displayed), however now it seems to work without problem. My only guess that you modified the disk image online since then ...
Is it possible to remove mouse emulation and add external joystick emulation instead for control port 1? (e.g. with the Num Pad keys 4/6 left/right, 8/2 up/down, 5=fire)
Then it will be exactly like in Ep128Emu, and we can test, if it's a SymbOS or a JSEP bug.
I know only 4 HxC EP user. And I think for the future the users will buy the direct SD interface for the EP, because will be more faster and comfortable. All Enterprise software are simple files on a FAT disks, then not need exact emulation of any disk image. And if anyone not have any storage device (just the tape player :-) ), for using HxC also need to find EXDOS card, which is ultra rare...Ok, that makes sense!
Thanks a lot for the new joystick mode! I cant test it currently as I am not home. Yes when its hanging the clock stops, too. I really wonder what it could be as it doesnt happen in Ep128emu. Is it possible to trace it somehow or look at different memory area or use breakpoints?
Hangs seem to appear in very rare intervals now, but sometimes they still happen. I still couldn't reproduce such hangs with Ep128emu.
What is the name of the memory array in JSEP? :)
I don't know if you have some kind of label or map file after compiling SymbOS for EP (files contain addresses for labels) but then after a freeze maybe pressing button Z80 helps to know the EP segment and PC to find out where the execution is being done during the freeze.Yes, it's the idle process, which is still running after the freeze. PC is somewhere around #044x, most registers are 0, only B and HL is changing, as the idle process is doing nothing else than increasing a counter.
Yes, it's the idle process, which is still running after the freeze. PC is somewhere around #044x, most registers are 0, only B and HL is changing, as the idle process is doing nothing else than increasing a counter.
One question about the memory array:
If I want to read data from page #f8, I can just use...
memory[0xF8*16384+offset]
...where offset is 0-16383, is this correct?
Yes, it's the idle process, which is still running after the freeze. PC is somewhere around #044x, most registers are 0, only B and HL is changing, as the idle process is doing nothing else than increasing a counter.It is can continously measure the CPU speed?
One question about the memory array:
One question about the memory array:
If I want to read data from page #f8, I can just use...
memory[0xF8*16384+offset]
...where offset is 0-16383, is this correct?
It is can continously measure the CPU speed?Yes, the idle process is increasing continously a counter. It has the lowest priority, so it only gets CPU time, when no other process is currently working.
Yes, the idle process is increasing continously a counter. It has the lowest priority, so it only gets CPU time, when no other process is currently working.
Now you can compare the constant 50hz system counter with the counter of the idle process and calculate the free CPU time.
@LGB: Thanks for the new functions, such a hex dump makes some things easier! Yes, the kernel is still working after such a freeze. I guess the Desktop Manager process is hanging. I will add some debug code into SymbOS to find out, what is still alive and what not. Unfortunately this will take a while, as I am currently working on another things.
[...]
fdccmd #AD44
fdcexe #AC87
fdcexe1 #AC9B
fdcexe2 #ACAE
fdcinp #AAF2
fdcinp0 #AAF5
fdcinp1 #AB18
[...]
I couldn't find an import function for it in Ep128emu, but I haven't fully used all the powerful features of its debugger yet. It would be quite helpfull.
Switching the CPU speed after SymbOS has been booted is indeed a problem for the CPU usage measurement. As you said, you need to stop all other tasks and count how many instructions you can do during one VSYNC. Of course this can't be done all the time.
Yes, it seems, that the Desktop Manager process stopped in a way, that it doesn't consume any CPU time. Your new peek functions will make it easier to find the current PC and registers of the process by having a look at the table in the scheduler, where these are stored.
It's possible to export a label list. In WinApe, which I am using for developing, it looks like this (labelname #HEXADR):Code: [Select][...]
fdccmd #AD44
[...]
I attached a new version with 4 drive support. It should be possible to add and access drive C and drive D as well.These setting can be saved for the next time?
I tested the latest version, and Mouse works good also on 10MHz!
These setting can be saved for the next time?
I think just needed to extend the Mass Storage menu with a new options: Normal drive, HxC emulated drive.
The current Head 0/Head 1 (I think it is come from CPC) don't needed on Enterprise, can be replaced.
The Double stepping is also not needed, more better if done automaticaly, we talked about it some days ago.
I think there is will be a good place to put the special settings, Step Rate and Turbo Modes.
These setting can be saved for the next time?You can backup your SYMBOS.INI (after you saved the config like Edoz mentioned) and copy it to newer disc images.
It is reported by user, who use! See the config. (http://www.bubus.freeweb.hu/szamtech/Sajatgep/Sajatgep01.html) :-)He is tested the latest 4 drives version, and working!
Somehow I have the feeling that something nice happens soon :D :D
Or bad .. SymbOS is complex enough to understand itself and its own existence and will start a war against the human race. Oh wait, that was Sky(-pe dot-)Net.
LGB, please note that SymbOS is designed to follow Isaacs three laws of robotics (http://en.wikipedia.org/wiki/Three_Laws_of_Robotics), so you don't need to be afraid, that your Enterprise computer will misuse
PS: The picture of my Enterprise is getting worse and worse depending on the runtime of the computer. After 30-45mins it's completely crashing.About 25 years ago when I'm used the Enterprise with RF cable :-)
It's getting quite hot on the upper left side. Hope this isn't a seriouse problem?It is a normal. Two 7805 voltage regulators make the heat.
At least two German EP128 users ordered their RGB-SCART cables from Spain and still wait and wait and wait... :-(
LGB, please note that SymbOS is designed to follow Isaacs three laws of robotics (http://en.wikipedia.org/wiki/Three_Laws_of_Robotics), so you don't need to be afraid, that your Enterprise computer will misuse the technological singularity (http://en.wikipedia.org/wiki/Technological_singularity) which it will reach very soon :ds_icon_cheesygrin: :ds_icon_cheesygrin:
But Edoz is right :P Have a look here: SymbOS playing videos from Sd card on the Enterprise!
https://www.youtube.com/watch?v=oW4LTVcP9x8
Today I got the SD card interface working in SymbOS: Gergely and Zozosoft, you made this possible!
So of course the first thing what I tried was to play videos, and that was working quite nice.
The picture on my monitor is still crap, as I didn't receive a SCART cable since one month, but maybe there was something wrong with the shipping address.
And sorry, the Control Panel still shows "IDE" and "Master/Slave" instead of "SD card" and "Slot 0/1". I will fix this + some additional things for making it possible to boot from SD card without the need to have a disc drive anymore.
SymbOS supports EXDOS floppy disc drive access and SD card access at the same time. What doesn't work right now is SD card swapping. Please let me fix these few issues before uploading the next version.
CU,
Prodatron
PS: The picture of my Enterprise is getting worse and worse depending on the runtime of the computer. After 30-45mins it's completely crashing. It's getting quite hot on the upper left side. Hope this isn't a seriouse problem?
Have a look here: SymbOS playing videos from Sd card on the Enterprise!Wow! Amazing!
You need to ask Edoz how to make video's. The guy that wrote the video studio creation tool doesn't remember how to use it :P
Wow! Amazing!
Can we try it on the 30th birthday party at Saturday? :-)
but there is something hw bug in the RAM expansion.Hope you can fix it?
Jump here, we wait you :-)
but next time I can jump by plane ;)Enterprise 128K launched at 1985 May 16. (http://enterprise.iko.hu/historical/Promo.pdf)
I hope it works on your machines, too. Please report any problem (or success) :)It is looks running smoothly from SD card, and also when no EXDOS card attached.
- the actual driver doesn't support "extended partitions". You can only select "primary partitions" (1-4)It is also true for other systems, other storages (IDE/SD/etc)?
Yeah I have internet on my mobile! I am now also celebrating the EP with some beer :P
But finally we can view lot of parts of SymbOS. I think the most important question now: when coming some sound? :-)Yes, that's still on the ToDo list :) And what's about an MP3 decoder hardware extension for the Enterprise? :P
Yes, that's still on the ToDo list :) And what's about an MP3 decoder hardware extension for the Enterprise? :P
Mouse mode:It works great!
- internal joystick = mouse
- hold = left mouse key
- stop = right mouse key
Full 12 fps and a lot of free CPU time :-)Cool, full 12fps and still time left! :) Did you try playing 2 videos at the same time? In this case you should still get around 7-8fps for each I hope.
On 4Mhz about 8-9 fps and 95-98% CPU time used.
What are the results on other systems with the same video (Matrix)?
Does the SD loading work with the faster LDI methods? If it does, then it has been tested now up to 10Mhz :-)
ld a,512/64
sdcred2 ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi
ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi
ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi
ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi:ldi
dec a
jp nz,sdcred2
:) What kind of hardware can be used for that? I found come ICs capable of doing simple mp3 (or even wav and vorbis) deconding in hardware for not so expensive, VS1011E-S or VS 1053 B - L (http://www.hestore.hu/files/vs1053.pdf) (the second one seems to support AAC, FLAC, WMA as well ... or even midi??? hmm). But it's a bit problematic because using lower voltage and SPI bus, not parallel one. I always feel that a general SPI bus solution for EP would be nice, and it covers the SD card as well, just there is a solution already for that :), no idea that SPI bus on that can be used somehow for other SPI device as well than SD card ...
Did you try playing 2 videos at the same time? In this case you should still get around 7-8fps for each I hope.Playing two Matrix :-)
I may misunderstand something, but if two videos can be displayed at the same time with 12FPS, wouldn't it possible to play a single video at 24FPS?No, because the second video was mostly hidden. And this "Matrix 2" video is recorded with 12fps, so that's the maximum.
No, because the second video was mostly hidden. And this "Matrix 2" video is recorded with 12fps, so that's the maximum.
And this "Matrix 2" video is recorded with 12fps, so that's the maximum.But you can make a higher fps versions? For example 20-22-24 fps?
Don't know if it's possible, but maybe you could make a video of this in action for YouTube?Will try it, but I have never used Youtube for uploading :oops:
Will try it, but I have never used Youtube for uploading :oops:After recording the video you can upload it to ftp. Then, I can download it and upload it on the Youtube. Or anyone else can upload it if they want.
Will try it, but I have never used Youtube for uploading :oops:Record everything, including the memory test and ENTERPRISE logo and the way of loading SymbOs, it would be very instructive and interesting!
way of loading SymbOs, it would be very instructive and interesting!It is loading too fast :ds_icon_cheesygrin:
So, it is now playable as well on the Enterprise!! You can download it here : TETRIS FOR SYMBOS (http://www.muziekpraktijkconanima.nl/msxorg/tetris.dsk)Found a bug in Tetris: if press Space the actual element stop in the air :oops:
Found a bug in Tetris: if press Space the actual element stop in the air :oops:Yes this is for virtually key it seems. Not Edoz's fault, mainly mine as there is functionality missing in Symstudio. Will be a new release soon and I'm sure Edoz will fix, along with more apps. In fact there will probably be a solid release mid january for those that want to try a little bit of symbos app coding.
I tested the latest version. The floppy driver still not working on turbo machines :-(Yes, I didn't work on this during the last time, so there is no update. I will probably have some time for this issue during the next days.
And the SymCommander always start with Drive A:You can save the current settings in SymCommander: Menu "Configuration" -> "Save settings". When you start it again it will select the correct drives directly. But I will do a better drive preselection, too.
I tried to remove A: from the system, then it is start with device not exist error, then going to F:
In the system at other points are the A: the default, for example when creating program shorcuts to desktop.Sorry, I didn't recognize this, thanks for the hint! I will fix this in the control panel. Are there any other points where it just selects A as default?
It is possible change the default at everywhere to the boot drive?
The drives how ordered? When I added the B then the order are A-F-B.That's done quite simple at the moment. Internally there are 8 "slots" for the drives. It will always search for the next free slot, if you add a new drive. So if slot0=A, slot1=F, and you remove A, then slot0 is empty, while slot1 still contains F. If you add a new drive now it will use slot0 again. You have to delete drive F too and then add all drives in the order you want. If it's important I can add sorting inside the configuration tool. Then drives will always appear in alphabetical order.
Then I try to remove A first and add again, for make F-A-B order (try to solve the default drive problem), but it is also again A-F-B.
Plus one more:That's a good idea! I am currently working on an advanced handling of desktop icons and startmenu entries (unlimited, +any kind of submenus, etc.), and this is what I will add now!
It is possible set the default directory for the programs?
For example \VIDEO for the SymPlay, \GRAPHICS for the SymSee, etc.
:DIR
-> shows the directory of the current drive
:X:
-> change to drive X (with the SD card these start with F)
- SymbOS EP is now included in the info window (appinfo.exe) as well :)Great :ds_icon_cheesygrin:
Here is another update:
(http://www.symbos.de/gfx/preview/sym-ep-09info.png)
(http://www.symbos.de/gfx/preview/sym-ep-10symshell.png)
It includes:
- SymShell now works in fullscreen mode, too (type FULL to switch between window and fullscreen mode)
- SymCommander fix: Doesn't try to load from a non existing drive anymore
- Control Panel fix: Uses system path always as default when adding new links
- bug fix in "scrolling down" screen low level routine
- SymbOS EP is now included in the info window (appinfo.exe) as well :)
and on the MSX it's like this :D :D :D :D
Ah, 16 colours? Can be done on EP too, though at about 160 pixel horizontal resolution or only a bit more (maybe 184 pixel can be achieved but it would be overscan on regular TVs) ... Is this a stock MSX/MSX2 (sorry, I am not quite an MSX guy, we can say ...) or with that gfx9000 (if I remember correctly) add-on? Anyway, if gfx9000 is "only" a cartridge for an MSX computer, it can be done for EP128 too :-)
No it is a standard MSX2. Would be cool to have the GFX9000 Card on the Enterprise!! (I'm not a hardware Guru .. but Prodatron told me that the GFX9000 is I/O based...so on the MSX it's just a Cartridge... Maybe it's cool to have this expansion for the Enterprise! And maybe if it exits on the enterprise we can ask him to create a 256 color version for the GFX9000 :D :D
I'm not an expert, but the pins of a MSX cartridge seem familiar...:
http://gamesx.com/wiki/doku.php?id=schematics:msxexpansion
I better would like a hires interlaced screen. I like more what the standard EP can do with the actual tools at hand of everybody. If you add that sofisticated graphics or sound cards you are creating a new explendorous elitist computer unreachable by the normal user. It will end being another very different thing than an Enterprise.Totally agree :)
I better would like a hires interlaced screen. I like more what the standard EP can do with the actual tools at hand of everybody. If you add that sofisticated graphics or sound cards you are creating a new explendorous elitist computer unreachable by the normal user. It will end being another very different thing than an Enterprise.
I don't think you'll see any interlace screens or graphics card support in Symbos for a short while, if ever. On the one hand you have a very specific hardware method for the EP like interlacing, which is great but doesn't fit with the other flavours of Symbos that well in that its not needed on the MSX and is unusable on the CPC. Once you rise above 4 colours the Symbos method is a 16 colour fixed palette. Break this you break all the software.
As cool as Symbos is its still somewhat a lowest common denominator piece of software meaning something running on EP has to work also on the CPC, PCW etc.
As for graphics cards using say the GFX9000 then if anyone builds it and I'm sure Prodatron would support it. But again all these things take time, and I think Prodatron now thinks the SymbosEP is mature enough that he can move back to developing Symbos 3.0 for all its recipiant machines.
The thing that bored Prodatron and forced him to stop developing for 6-7 years last time was people asking for drivers for another of the 1000 FDC's that the MSX seems to have. Covering old ground over and over is not fun and we all need to keep growing and developing new areas rather than maintaining what already exists.
3.0 is Something I think will move Symbos to a new level... especially network support.
I guess what I mean overall is that Symbos is its own standard into which CPC, MSX,PCW and EP can all perform. As an CPC fan its easy to get very specific about features the CPC might be able to do that the others can't.... But symbos isn't CPC its Symbos, and thats its own standard and when I think for developing software for it I'm developing for not just my old friends but new friends here and on MSX.ORG etc
* allow switching between EXOS and SymbOS
Is it possible with enough memory? I mean: doesn't SymbOS destroy the EXOS environment when it runs?Yes, it is very easy on more than 128K
But you should use not the FFh segment as video memory. As I know the other memories are allocated on the right way.Exactly, but on an 128K machine there is no chance to get 8 pages allocated from EXOS, so in this special case I take #FFh in a fixed way.
Btw, EXOS "Function 24 - Allocate Segment" doesn't seem to support "please allocate a segment inside the video ram area", is this correct?Yes. I repeat the allocation util got a video segment then free up the other non needed segment.
BDW: it would be cool is someone create a YouTube Movie running SymbOS on a real Enterprise machine !!I tried to make a video, but the camera in VGA mode had very ugly results, Full HD mode has a very big file, ~800MB :-(
I tried to make a video, but the camera in VGA mode had very ugly results, Full HD mode has a very big file, ~800MB :-(
Anyway here it is. (http://enterprise.iko.hu/DSCF0198.AVI)
Prodatron if you like it, can you put it to your youtube?
I'm not a movie director, probably someone can make far better :oops:
Wow!! nice movie!! Your monitor gives a very good quality!! Which monitor you are using ?LG M2362D-PZ with SCART cable.
Is this machine running at 10Mhz?Yes. I started with paused startup screen so that you can read the parameters :-)
That Microteam and RTC seem to be mine......Yes :ds_icon_cheesygrin:
Great Video. The speed is amazing, looks better than 10mhz, as everything just appears so solid. Can't wait to get some symbos games coded and running at this speed. Great work from the EP scene and of course Prodatron.
Currently working on the 4 color mode support for the Explorer:Very nice!
Currently working on the 4 color mode support for the Explorer:Great!
I tried to make a video, but the camera in VGA mode had very ugly results, Full HD mode has a very big file, ~800MB :-(The video is great, too!
Anyway here it is. (http://enterprise.iko.hu/DSCF0198.AVI)
Great!
One little problem is the mistyped "unknown.ztz", the "n" is missing after "k".
Looks 1:1 like Windows :D
Just recognized that there seem to be a problem with menus in SymStudio. Maybe there is a hidden last line which causes the menu to be too wide?
Youtube (https://www.youtube.com/watch?v=1L-TWdVl2Ck)It is incredible, just like Windows!
It is incredible, just like Windows!
Dat is heel goed!
HAPPY NEW YEAR! (https://www.youtube.com/watch?v=wwIbGLEEY6k)Great :ds_icon_cheesygrin:
Greetings!
Ok, where is some cross-platform Happy New Year SymbOS application?! :) And of course, Happy New Year to all!
Ok, where is some cross-platform Happy New Year SymbOS application?! :) And of course, Happy New Year to all!
You missed the youtube movie ?;)
We this silence...? :-)There's a MSX meeting in Nijmegan next weekend that symbos will be shown at... could be quite interesting for symbos news :)
We this silence...? :-)
Networking sounds fun, but first some kind of hardware should be seen which supports that :) Or is there already a solution on CPC/MSX/whatever platforms for this purpose?
There's a MSX meeting in Nijmegan next weekend that symbos will be shown at... could be quite interesting for symbos news :)Is any news? :-)
It was fantastic to see Edos Enterprise modified by Zozo running the first time with enough memory and CPU speed :D Unbelieveable!
I will post pictures during the next hours! :P
... waiting ... :)I'm also... :-)
Here is a first picture :ds_icon_cheesygrin:Where is the joystick cap? :oops:
Where is the joystick cap? :oops:
It will be a built-in feature of SymbOS 3 :):ds_icon_cheesygrin:
I made a video of our SymbOS booth, where it was running on all 4 platforms at the same time :)Great!
@Zozo: Did you send the cap to Edoz?Yes! It is packaged to same bag with the machine. I hope he is don't drop out with the packaging!
And who are the peoples in the video? :-)You can see EdoZ at 2:02 and 2:12 :ds_icon_cheesygrin:
The Enterprise is the best looking machine there even without the joystick cap! :smt007Totally agree :), and not only there :D
And the fastest at 10MhzIt is just :-) 7.12MHz, with regular 320KB memory.
It is just :-) 7.12MHz, with regular 320KB memory.Wow, even with 7,12MHz it felt unbelieveable fast: It could even play the videos in 2 colour mode (640x200) at nearly full speed (11fps instead of 12), while it was converting all frames from 4 to 2 colours in realtime!
Now working on Prodatron machines, he want a 4/6/7.12/10MHz, with Saint's 1MB expansion :-)
He should need a mouse too....Now I have a MSX with a mouse. (http://enterpriseforever.com/other-topics/msx-computers/msg44557/#msg44557)
Now I have a MSX with a mouse. (http://enterpriseforever.com/other-topics/msx-computers/msg44557/#msg44557)
Then I will build a modified Boxsoft converter for the MSX mouse, for a quick solution. I think Prodatron and Edoz already have a MSX mouse :-) You are interested in this solution?
No thanks. I can build another Boxsoft interface for my spare EP... Not in a hurry...I'm only curious about connectivity...I asked Edoz and Prodatron, for a quick solution until a new modern solution finished.
The Enterprise is the best looking machine there even without the joystick cap! :smt007
When we may wait for some novelty...? :-)
Dear Mr. Edoz,
Can you please write more about the topic "what is your lately developed program part"?
We are interesting every details, and if you would be so kind, to take the keyboard, and make a summary, than we would be very grateful.
Some Hungarian forum member makes here a "record" at times, mostly during the developement, thus others can take part of the developement itself, and it makes us happier, and is good for our souls. With other words, most of us curious for new stuffs.
So if you able to share some thoughts, please do it!
Thank you!
The network driver is running as a "Daemon", which is an own background process in the multitasking environment. Applications can send messages to it, like asking for opening a new connection
Regarding the W5300, wow, that sounds very cool! I didn't read about if before. Because of the layer structure inside the driver it should be very easy to support it, too!
Thanks for the information! Though I am not sure I can understand: afaik 5100 (5300 at least ...) has hardware level of tcp/ip implementation with an embedded MCU for real, or such. Thus you don't need to implement low level stuffs like with an ENC28J60 (ethernet frame, IP packet, fragmentation, windows, etc etc) but virtually you need only to tell to open tcp or udp connection to a given IP and the "hardware" (the MCU for real) will do it, also maintaining the tcp handshaking, and the connection, etc etc. I am not sure about that ESP stuff (which is wifi based if I remember correctly), it's something which can be used through an serial connection or so. There was an article on "hack a day" that you can even reprogram its MCU, but not so much interesting I think.Yes, the W5x00 does all the stuff including the TCP/UDP layer. Basically you have functions like "open connection", "receive data", "send data", "check status" and "disconnect/close connection" for TCP, UDP, but also for lower layers. So most work is just interfacing with the W5100, but also implementing DNS lookup (and DHCP). The ESP even does DNS by itself.
Maybe it's even backward compatible with W5100, so no (or minimal) modifications needed only, but of course it would not use the additional power of the 5300 for example 128K of rx/tx buffer space instead of 16 (?). The module I own now is quite nice (I would not solder something like that 5300 or 5100 chip myself ...) it costs about 20EUR at mouser. And the best, that it seems to be Z80 bus friendly (for me, at the first sight) not so much interfacing is needed for the EP too much (but the logic voltage level what I am not sure about).I had a quick look at the datasheet, and yes, it's very similiar. What I like is the higher number of sockets (8 instead of 4), as 4 could be a little bit limited if you exhaust it to the maximum ;) With the 5100 you have 2KB buffer for incoming (RX) and 2KB for outgoing (TX) data for each socket. This seems to be ok for an 8bit system. The 5300 has 16K RX and 16K TX buffer for each socket, which is probably the maximum what makes sense for the Z80.
Now I am only thinking that SymbOS3 will require more memory even without network support loaded (? or there will be different builds for network support). As we know now, 128K is a bare minimum for just the OS, but SymbOS 3 seems to have many new things and not only the network support, I guess ...The base version of SymbOS 3.0 will require a little bit more ram again, but it will still run on 128K, and you will still have the possibility to start 1-3 small apps. Most of the new "big" features are now located in additional modules, which can be loaded optional. This is stuff like the network service as well as the enhanced desktop with its more Win98 like behaviour and the extended startmenu.
I had a quick look at the datasheet, and yes, it's very similiar. What I like is the higher number of sockets (8 instead of 4), as 4 could be a little bit limited if you exhaust it to the maximum ;) With the 5100 you have 2KB buffer for incoming (RX) and 2KB for outgoing (TX) data for each socket. This seems to be ok for an 8bit system. The 5300 has 16K RX and 16K TX buffer for each socket, which is probably the maximum what makes sense for the Z80.
lgb hold on to your wiz830mj I have just started working on an Enterprise network interface using one of these. I'm not sure of all the differences between the 5100 and 5300 but I think they are basically the same but with more RAM on the 5300. The 5100 should do the job fine for the Z80 but as they are the same price might as well use the better part which is also more readily available (here in the uk anyway). Don't hold your breath though, it will not be instant and I've only just seriously started looking into it. :)Bruce, maybe you can tell a little bit about it here (http://enterpriseforever.com/hardware/wiznet-51005300-etc-and-enterprise/msg45617/#msg45617)? :P
I still miss the 'like' button to be able to use on some posts :)
:shock:
I am waiting for being allowed to download it for Enterprise! :)
This is the standard speed of the CPU, if any turbo ?Standard 4MHz (you can see it the startup screen).
By the way.... seems there is one more EP user with mouse....At least in this new video there doesn't seem to be a mouse...
But this is an intolerable situation..... Mouses for the masses! Mices for everybody!I totally agree! :D
Cool, even for me who is pretty bad in hardware stuff this doesn't look to complicated :)
Ok, I can change the delays, this will save some CPU time!
Anyway my next EP specific work will be fixing the remaining FDC issues.Now I sent mail about it!
Mouses for the masses! Mices for everybody!I don't understand. :D Words "mouses" and "mices" do not exist. I even doubt "masses" unless you mean masses in a church. :D
Prodatron! As I see you documented the floppy problem (http://enterpriseforever.com/other-topics/2015-may-16-30th-birtday-of-enterprise-128/msg47007/#msg47007) on turbo machines :-) (On the photo with the 6MHz prototype machine)
And the most frequently asked question at the party: when coming some sound to the EP SymbOS? :-)Currently there is only SymAmp, the music player for SymbOS. Somehow it supports plugins for different music formats, but this is more on source code level. I just saw, that the sources are not included in the download area of www.symbos.de, so I have to add it!
Which sound sources exist in SymbOS?
Only a separate music players for various files, or exist some general sound driver of the OS what the applications can use?
But if you develop an external memory expansion with paging enough for SymbOS, then we can have SymbOS for almost every computer this way, tons of ports can be done, even for Primo maybe :-PNo because, most of machines not have capability for disable the internal memory, then you can't add new paging mechanism.
No because, most of machines not have capability for disable the internal memory, then you can't add new paging mechanism.
Ok, it depends how you define "external", in my dictionary, some cut or "convert to jumper" on PCB is OK (etc etc).:-)
Where is the video ram located in the TVC?It is can be paged to Page 2 (8000-BFFFh). 16K in the 32K and 64K models and 64K in the 64K+ model. (This is a additional memory, then the total is 48K, 80K, and 128K).
How is the bitmap mode organsized? Does it encode the colours in bitmap mode in the same way like the EP (and CPC)?Yes. (It is also exist a software TVC emulator for EP :-) )
possible to have the screen mapped at #c000?No :-(
BTW, as we already discussed before I would like to introduce an extended EP version with a screen resolution of 384x270x4 (or what was the X-maximum?) for systems with more than 128KB :PYes, we also like it :-)
Yes, we also like it :-)
Technicaly 368 (4 color mode) x 300 possible, but probably at many monitors will be cutted :-) Is possible make setup option for these values?
What is a "save" maximum X-resolution? It would be good to have a fixed value here, as it would speed up low level routines...The EXOS allow 336, it is good for all monitors.
I would prefer 270 = 256 (main screen) +14 (task bar) because it makes things easier for the main screen (only 8bit Y values for the low level screen routines)I think this is will be enought good :-)
No it is on turbo in the movie but it runs very well on 3 on the enterprise. Seems better then the MSXProbably because MSX screen contains more data than EP screen which is 16 KB ?
Probably because MSX screen contains more data than EP screen which is 16 KB ?
As we already discussed in Budapest it's really hard to compare :) The MSX screen is larger (in this case it's 27KB), but the MSX has a blitter, and the EP not.
Yes, it was just an idea from me :) why could write Edoz for a normal 4MHz EP: "Seems better then the MSX"My general experience is, that the MSX with 16 colours has a similiar speed like the CPC and EP with 4 colours. The MSX has to handle the double amount of data, but because of the VDPs blitter you have the same speed at the end.
Because normally with MSX VDP it should be faster, and you mentioned SymOS using advantages of VDP :)
Because of the upcoming network support in SymbOS the next game project is already started / in development! It’s called “Battle Ship!” The famous classic game comes to SymbOS where there is a possibility to play with other players using the new network daemon for SymbOS.It is sounds very amazing!
With a real mouse?
With a real mouse?I've noticed you really want a mouse for your ep :lol:
No, I already have several mouses and interfaces (http://enterpriseforever.com/hardware/re-paintbox-mouse-xr/msg46062/#msg46062) for my EP....Oh, sorry, but I just found it funny that you post about mice so much;P
What I really want is that soon every EP user got one....
You already implemented W5300 support in your new emulator?? When you send me the specs we can try some tests! :)
IIRC Bruce is using the indirect access, which is working with I/O ports. Did you already ask Bruce how it will be accessed?
So do you emulate these 6 ports exactly (maybe only in TCP mode)?
I never had this problem with MSX emulators btw. Here you always choose in the settings, what is connected at which control port (joystick or mouse or nothing). Can't you do the same in Xep128?
I only thought that I can detect somehow that SymbOS tries to test if joystick presentsAh, I got you. SymbOS checks, if it always returns X+1,Y+1 from the mouse. When it receives 16times a movement of X+1,Y+1, then it is sure, that a joystick is connected and not a mouse.
Ah, I got you. SymbOS checks, if it always returns X+1,Y+1 from the mouse. When it receives 16times a movement of X+1,Y+1, then it is sure, that a joystick is connected and not a mouse.
When will be next update? :-)With EnterMice support? :-)
Hi All,
I created a small performance tool to compare our home computers using SymbOS.
Is there someone who can test this program in SymbOS on a Enterprise?
And after that can send me a picture of the general score and a picture of the detailed score?
It would be cool if it could be tested on a normal Enterprise and one with a turbo mode!
I hope someone can test it as my ENTERPRISE is currently dead and not working :(
Link to Download (PERFMON.ZIP) (http://members.home.nl/evanzanten/msxorg/permon.zip)
Het opgevraagde bestand/pagina is niet bekend
I hope someone can test it as my ENTERPRISE is currently dead and not working :(I can only test at next Monday :-(
Enterprise standard system:
Why the difference in disk access on stock Enterprise?SD Card also run faster on turbo Enterprise.
I don't remember about any other EP-related critical bugs, but maybe I missed something?Not a really bug:
Don't use FFh segment on expanded machine, then will be possible exit to Enterprise system via Shut down menu, and later also possible start Enterprise programs from SymbOS.
Hi Guys, I am planning to release SymbOS 3.0 soon in May, so it's time to remove the last issues for the Enterprise as well!
The two important things on my ToDo list regarding the EP are currently these ones:
- fix the FDC timing issues
- add full support for the EnterMice
I don't remember about any other EP-related critical bugs, but maybe I missed something?
I've found a pdf file explaining SymbOS 3.0 capabilities.As the PDF file is too large to be uploaded to the forum, I have uploaded it to FTP.
main work for this are the EP modifications (especially the floppy disc driver and the mouse driver).And full screen video driver :oops:
Edit: I don't like football....:ds_icon_cheesygrin:
Prodatron is actually working on the Enterprise port of his wonderful SymbOS, fixing the Mouse reading routine to work with all the buttons and wheel.Great news!
It seems, that my USB mouse (+adapter) isn't working with my EnterMice hardware on my real EP, its LED stays dark. I guess I have to buy a real PS/2 mouse (I wonder where I leave my old one...).The adapter are come with this mouse?
Good idea, thanks for the hint Geco! That's how I did it for the old Boxsoft driver, will try it for the EnterMice driver now as well!Or probably the values should be bigger at 10 MHz :?:
A static 5/8 delay didn't work for all kind of CPU speeds right now (or maybe I missed something).
The genius here.
But Prodatron still has to extend the resolution to the max admited.Yes, that's not planned for 3.0, as it requires some more work and will also split the EP port into two branches (normal and "power" version ;) ).
I love it and I wait for it very much! :-)
It is using the Extended Desktop, so it won't fully boot on machines with 128K only (just delete the SYMBOS.INI if you have 128K only).The Extended Desktop can be switched On/Off from settings somewhere?
Yes, if you enter Control Panel/Mass Storage, now the SD appears on the options when you add a new device. You even can select slot 1 or 2 of the SD reader, then the partition.But the SymbOS only handle the four Primary partitions, not the extended partitions :-(
Yes, only four partitions is a limitation with the actual FAT12 situation.No, it is limit of standard MBR. And the solution are the Extended partitions, which is use only one entry in the MBR table.
There is also a "not partitioned" option, probably to format to FAT16/32 within SymbOS.SD cards can be exist without partitions, 0. logical sector store the boot sector like as the floppy.
Now that IDE disks can coexist with the SD-reader, you must describe the device to Prodatron to be included on the list of devices.Some power users want it! :-)
Also, in the future, explore how to return to EXOS without losing its integrity. Also, a way to launch an EXOS app.For this need to be system segment don't overwrited. Prodatron say previously it is only possible in the "for extended Enterprise" version, which can be use a different memory map.
Some power users want it! :-)
For this need to be system segment don't overwrited. Prodatron say previously it is only possible in the "for extended Enterprise" version, which can be use a different memory map.
As Prodatron has put it in Youtube, you all can enjoy this video preview (https://www.youtube.com/watch?v=JbEzlhNLshc).Great! :smt038
The text in the video:Small correction, I used István's AY emulation routine :) , and it is not fully finished yet, it should be modified at least on 4 places , because SYMBOS using relocation and it seems only Winape's assembler supports it, but not everything, on this 4 places the relocation is hard coded, and I have to test it with other songs also. :)
"Geco managed to modify SymAmp for playing sound modules on the Enterprise as well! This is only a little video showing the first two test songs on my real EP 128 machine.
The special thing about Gecos work is, that the "Dave" chip (which is responsible for the sound as well) of the Enterprise is not compatible to the AY-3-8912 (PSG) used in the Amstrad CPC, MSX, ZX Spectrum and others. Geco had to write conversion routines, so that the modules still sound fine on the Enterprise as well. IMHO it's a great result!"
I showed Geco on 25 November the place where Prodatron has the source of the SymAmp app, and Prodatron has released this video on 28 November.
Geco is fast....
There is also a "not partitioned" option, probably to format to FAT16/32 within SymbOS. I've not tested if an already created FAT32 partition is detected and used.Zozo is correct. Today sometimes an MBR is added with one partition, and sometimes there is no MBR, the boot sector of the first partition is directly placed at physical sector 0. In this case you have to select "not partitioned".
The question are: how many drives (letters) are possible under SymbOS? If also possible up to Z, then only the partition collection routine needed to be extended.You can use any drive letter between A-Z, but the total number is limited to 8 (again with a nice FAT32 partition this is more than enough :P )
Prodatron say previously it is only possible in the "for extended Enterprise" version, which can be use a different memory map.That's correct!
Well, with mass-storage solutions now like SD-card, isn't it possible to save the system segment, to the card and restore on exit?Hm, good idea, maybe the boot loader can do this before starting SymbOS. Then no changes in SymbOS itself are required at all, just a "restore app", which is executed when you quit SymbOS...
This SymAmp are available?It's currently in Gecos hands :) I just tested his first version from yesterday evening, which he was sending to me.
It's currently in Gecos hands :) I just tested his first version from yesterday evening, which he was sending to me.
The reason why the extended partitions pop up: users want to use Sym Commander as file manager for Enterprise partitions.Ok, I agree... Shouldn't be a problem to extend it for the next version!
Then will be good if all partitions can be accessed.
Ok, I agree... Shouldn't be a problem to extend it for the next version!If you solve this I give half of my kingdom. :ds_icon_cheesygrin:
Not related with your question, but Yesterday I found that a Brazilian company or group(Tecnobytes (http://www.tecnobytes.com.br/)) had been releasing batches of enhanced clones of Sunrise MoonSound and GFX9000, they even plan to launch a FPU coprocessor on a cartridge. They also have IDE and Ethernet cartridges on their catalogue, but actually no plans to relaunching them.
I was dreaming on connecting my EP to a GFX9000 when I found it.... see the specifications...
Maybe it is not so difficult to make some kind of connector for the GFX9000 so you can hookup it to the Enterprise?
I guess no ... For my MSX-virgin brain :) what I know about MSX hardware that it uses a dedicated video RAM, and the video IC (like V9000 but other, older ones too, like 9958, 9938 ...) needs only some (?) I/O ports towards the CPU. So maybe it would be quite easy to connect anything like that to the expansion bus of the EP? However then, you will get a dual monitor :) setup, since not so much a sane way to mix it with the Nick output (though Nick has "external colour" inputs, but first, AFAIK these ICs has analogue output (???) and the most important: you can't make sync between them either too much, I guess at least).
I said "dreaming". For me that wouldn't be an Enterprise.Same for me.
I think that the really missing piece on the EP is some form of hardware sprites. Or its very own form, never released but already planned. :(I tried ask many hardware magician but no one want to do it :-(
I guess no ... For my MSX-virgin brain :) what I know about MSX hardware that it uses a dedicated video RAM, and the video IC (like V9000 but other, older ones too, like 9958, 9938 ...) needs only some (?) I/O ports towards the CPU. So maybe it would be quite easy to connect anything like that to the expansion bus of the EP? However then, you will get a dual monitor :) setup, since not so much a sane way to mix it with the Nick output (though Nick has "external colour" inputs, but first, AFAIK these ICs has analogue output (???) and the most important: you can't make sync between them either too much, I guess at least).
I said "dreaming". For me that wouldn't be an Enterprise.And I am still dreaming about Ethernet for the Enterprise :P
I think that the really missing piece on the EP is some form of hardware sprites.
The V9990 is accessed only by these few ports (on the MSX):
Hmm. I am wondering if it's possible to create a "bridge" to connect MSX "cards" onto Enterprise. Maybe not limited to V9990 stuff ... After all both system uses Z80 and its bus handling methods, though for sure there can be specialities, I/O port collusion, exact timing (ie, different clock speed, wait states, whatever). At least "simple" cards (from the viewpoint of bus connection and needed features/timing, I mean that "simple") should work, which are not picky about the very accurate MSX stuffs.
I'm a bit confused with ESP8266. As far as I know (or knew ...) it supports mostly UART-like control, and SPI cannot be used for this purpose too much and the ESP only supports SPI for mostly being a master and not a slave what we would need here. However on a page found from you the description of the youtube video (M4 Board – The SPI IPC) it states that indeed, ESP is the master. But I am lost then, how can something direct ESP to something when SPI communication is initiated and controlled by the ESP, so the opposite direction what I would think? Do you know any further how it is realized? Thanks.
A few ESPs have just arrived in the post...Wow! A Z80 machine with Wifi really rocks! :)
Wow! A Z80 machine with Wifi really rocks! :)
Thanks so much Geco!Thank you very much :-) I hope without hanging.
I am currently enjoying my Enterprise 128 as a very cool jukebox with your new SymAmp version and many PT3 modules! :D
I will make more tests tomorrow!
What I miss once and now yet, that HDD (winchester) treatment! Prodatron you plan it...? :-)Ep128, are you speaking about the IDE interface (which is emulated in EP128Emu)?
On the other side, I can't un-check the Floppy disk option on Control Panel/Mass storage, so I can't create a new device for a SD partition. Is it only me?You want to delete the floppy disc? Just press "DEL" after selecting it.
Ep128, are you speaking about the IDE interface (which is emulated in EP128Emu)?Yes.
Here is a DSK with the actual build of SymbOS 3.0. It is using the Extended Desktop, so it won't fully boot on machines with 128K only (just delete the SYMBOS.INI if you have 128K only).It is realy needed a separate .INI for 128K and expanded machines? Now I tried it and it is look auto disabled the extended desktop when loaded with only 128K.
Ep128, are you speaking about the IDE interface (which is emulated in EP128Emu)?
Little crazy: all app renamed from previous version :oops: Need to edit all shorcuts, and programs at file extensions.
Found bug in SymCommander: it is not see all files in directory :oops:
(Attachment Link)
(Attachment Link)
Tetris waiting for the EP full screen mode :oops:
(Attachment Link)
You already said that you implemented a clock recognition routine at SymbOS StartupYes, it is only done at the startup. This is also made a problem at the task manager, wrong cpu percentage displayed after the clock change.
Yes, it is only done at the startup. This is also made a problem at the task manager, wrong cpu percentage displayed after the clock change.
Oops, it seems, that I mixed the SymAmp versions! Sorry Geco, I will check it and update the correct one!I thought later I made something wrong, therefor I removed Symamp part from my message :), but now I do not find the modified version neither :D
I think I know what happened, now I found the latest version of Symamp, and it does not work either, Enterprise identifier value is not in Symbos 3.0 or it was changed, this is the reason why Symamp plays as a CPC, and could be the reason of other 2 apps hang?
Cool we have Symbos 3.0 :smt041 :smt041
What is the start button In Columns ? I tried all keys, but I could not start it.
Hmm, Flying, and Picture slider hangs Symbos, could be the reason I removed Symbos Disk, and attached my application disk to A: drive?
For Columns. You have to go to the mouse to the start text and press with it with the mouse. Or use the joystick or the special commands to move the mouse with the cursor keys. (see PDF manual for more info) Once started you can use the arrow keys to play the game.thx :-) i checked only the zip if it contains help.
Wat wend wrong with Flying?
But there is still the plan to have the "expanded" EP version of SymbOS after the 3.0 release, which only runs on expanded machines (192K or more) and uses a higher screen resolution. This would always keep the #FF segment free for EXOS.Then there is the question: when coming the expanded EP version? :ds_icon_cheesygrin:
Still no working version of symamp?As I see EP identifier changed from 7 to 6.
I guess... if the problem is only the Enterprise identifier value because Prodatron added MSX1, may be the new identifier number is the former one +1...
Edit: Now I understand, it is a problem also of other SymbOS apps.
I hope we can listen to these songs (https://www.youtube.com/watch?v=3xEyNQA6Weg) on the Enterprise soon. They sound cool, in mp3 format!
strange, the latest update on his page was from aug of 2017.
It is time to remind Prodatron the errors you have found, please.The "INS-lock" mouse emulation don't work in final 3.0 (it is worked in the latest beta 3.0).
It is difficult to contact Prodatron... He is the kind of person that contacts other only when he wants....
I will try to remind him if at least he can fix these minor errors.
Play MP3Only with SF3.
Found a bug :oops:Later I also wrote an email to Prodatron about this bug.
The "INS Lock" joy mode (for no mouse) isn't working :( In the last EP beta release it worked right.
If I maintain ALT pressed while I move the joystick, the pointer moves.Yes. But until the last beta release, when you simply press INS then it is locked the "joy-mouse" mode, don't need continously press ALT. PAUSE and STOP are the two mouse buttons. Next INS switched back to normal joy mode.
As I have said, on some circumstances I didn't need to press ALT. I have to search how.Interesting!
Okay, we understand everything.
But we have a program for the Enterprise that doesn't do much. Play MP3, play video, play some games.
That's it. While MSX can send email etc. :(
And yes! I really need to do some bug fixes as well on some ‘old’ apps which have the color issues on the Enterprise. But this is because of a bug in the old development suite, Unify for SymbOS. As Unify is obsolete and because of many reasons I work in Quigs now. (Which was beta released as well) But i still need to migrate/convert my old projects to the new envoirment.. time is the biggest issue here ;) But when done those issues should be fixed as well. And after releasing 3.1 I think the Enterprise system should be on speed again!
Wouldn't it make more sense for joy to work immediately without EnterMice? :DNeed a switchable mode, because sometimes need to use joy as joy. For example SymCommander, games...
maybe you can tell me the amount of x/y pixels I should adjust it?These questions are for GFX-NINE?
just an estimation"
Would be happy to test. Have an G9K connected to my EP.
Anyway, i can't help it.
There are examples in sources how to do it. What driver do you need?A Bruce EP NET card would also be good for the SymbOS driver. But the SF3 card is more important here. Net driver, access to SF3 pendrive from SymbOS. And plenty of options. Keep in mind that SF3 starts from the CPC platform, so nothing is impossible! In fact, RSF3 is already being made, so time is running out!
A Bruce EP NET card would also be good for the SymbOS driver. But the SF3 card is more important here. Net driver, access to SF3 pendrive from SymbOS. And plenty of options. Keep in mind that SF3 starts from the CPC platform, so nothing is impossible! In fact, RSF3 is already being made, so time is running out!
Cool! Do you have SymbOS running with G9k already?
Yes. It has been a while since I have used it but I have had it running :)
I will PM you my mail and we can take the rest there.
BTW: If you want I could borrow you a EP64 with EXOS2.4 for development. I bought an Egyptian EP some time ago when my 128 broke down. It worked flawlessly after a recap and new keymembrane. My 128 should be finished at the repair now (fingers crossed) and as soon as I recieve it I can send you the EP64 so you can start testing your work on EP. With SF3 you do not notice the lack of Ram. Up to you! :)
No problem! Just say the word if you reconsider :)
And please mail me (see PM) if there is anything you would like me to test.
Edoz's machine is on the way.
Great!Unfortunately, getting an SD expander at a reasonable price is impossible.
Now SF3 users can use Geco's trick on the SF3boot.Rom to launch a working SymbOS session from the USB. No more a wonderful SD cartridge is needed. Ah, and the USB mouse....
Where can I find the description of the OS, is the OS event-driven like MS Windows? Are the API calls, where I can draw a windowed screen?I suggest reading the SymbOS documentations (http://www.symbos.de/download.htm#marke1).
The ram is divided into 64K parts, which are called "banks". Each
bank is devided into four 16K parts called "blocks".
....
SymbOS consists of several modules called "managers". Most parts of the
operating system are placed in the first 64K ram bank. Applications are always
placed inside a secondary 64K ram bank, which will be completely activated,
while the application is running.
To be able to access the applications memory, the operating system has to
switch parts of its ram to the visible 64K. As the original bank switching
possibilities are limitated, not all managers can access every part of the
application memory:
the desktop manager can only access the last 16K
(#C000-#FFFF) of each ram bank. All application data, which needs to be
accessed directly by the desktop manager, must be placed here. These are the
window data records and the control data records. Also the stack and the
message buffer must be placed here, as the RST #28 function (BNKFCL) can only
be used with such a stack position. This memory type is called the "transfer
area", as it is the only part, whose data can be transfered to the desktop
manager and to the kernels message module with the fast use of bank switching.
Please note, that the application itself does not need to take care about the
correct position of a memory area. This is done by the system manager, when it
allocates memory while loading the application, and by the kernel, when the
application wants to allocate additional memory of one of the three types.
I am a little surprised, because with Z80 assembler I'm not able to make position independent code.Like Geco mentioned each SymbOS application has a relocation address table attached, which is used for preparing the code for the required location in memory. Relocation address tables are supported by the integrated WinApe assembler (which I am usually using) and by SjAsmPlus, too. NYYRIKKIs developer pack is based on SjAsmPlus.
Please note, that my Enterprise is always placed on my desk, so i will never forget about it. I have it on fairs on a regular base to demonstrate it to other people, I will not reglect it! I am sorry that such a feeling is coming up.