Welcome, Guest. Please login or register.


Author Topic: EXOS source code? (Read 9855 times)

Offline emptiness

  • Beginner
  • *
  • Posts: 33
  • OS:
  • Linux (Ubuntu) Linux (Ubuntu)
  • Browser:
  • Firefox 80.0 Firefox 80.0
    • View Profile
EXOS source code?
« on: 2020.September.27. 23:04:48 »
Did anyone ever produce an annotated disassembly of the EXOS 2.x ROM? I've had a bit of a look, but not found anything. The Spectrum community has http://www.primrosebank.net/computers/zxspectrum/docs/CompleteSpectrumROMDisassemblyThe.pdf but EXOS appears to be a far more interesting system and I'd like to know more about the internals.

I'm aware that I could put a ROM image through a disassembler, but then I'd have to know what parts of the ROM were data and what was code and I'm curious whether anyone has already done that work and been kind enough to annotate the disassembly.

There's a neat disassembler toolkit for the Spectrum world (https://github.com/skoolkid/skoolkit) that uses profiling in an emulator to work out what is code and what is data. Do similar tools exist for the Enterprise?

Offline ergoGnomik

  • EP addict
  • *
  • Posts: 1187
  • Country: hu
  • Stray cat from Commodore alley
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 52.0 Firefox 52.0
    • View Profile
Re: EXOS source code?
« Reply #1 on: 2020.September.28. 05:59:09 »
Did anyone ever produce an annotated disassembly of the EXOS 2.x ROM?

The answer is yes. What you won't like is that it's in Hungarian. You may get that here.

Offline Dr.OG

  • EP lover
  • *
  • Posts: 605
  • Country: hu
  • dr.
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 85.0.4183.121 Chrome 85.0.4183.121
    • View Profile
Re: EXOS source code?
« Reply #2 on: 2020.September.28. 06:04:23 »
Some direct links (the first one is in Hungarian, but in HTML format, so can be easily Google-translatet):
http://ep.homeserver.hu/Dokumentacio/Konyvek/Enterprise_128-as_ROM_visszafejtese_0_szegmens/ROM_0.htm

The second one is in hungarian as well, a scanned PDF, no OCRed, so a bit difficult to translate:
http://ep.homeserver.hu/PDF/Segment_1.pdf
ÉN ekelek, TE keregsz, Ő gyeleg,
MI ákolunk, TI vornyáztok, ŐK lendeznek.

Offline dangerman

  • EP fan
  • *
  • Posts: 100
  • OS:
  • Linux (Ubuntu) Linux (Ubuntu)
  • Browser:
  • Firefox 79.0 Firefox 79.0
    • View Profile
Re: EXOS source code?
« Reply #3 on: 2020.September.28. 10:32:34 »
Did anyone ever produce an annotated disassembly of the EXOS 2.x ROM?

I have a partial disassembly (in English) that I made for fun a few years ago. It's probably 25% done. I worked out where the main bits were - reset code, WP, device drivers, BASIC functions etc. (The EXOS ROM actually contains some of the code for BASIC!) But I didn't get around to sorting out all the data or annotating everything. Unfortunately I don't have access to it at the moment, but I'll try to get hold of it and tidy it up so it's useful to someone else.

I also believe that the community has the original source code somewhere - part of the stuff from Werner Lindner (technical director of ENTERPRISE Computers GmbH). Is that right?


There's a neat disassembler toolkit for the Spectrum world (https://github.com/skoolkid/skoolkit) that uses profiling in an emulator to work out what is code and what is data. Do similar tools exist for the Enterprise?

Not as sophisticated as emulation, but several modern Z80 disassemblers will try to sort the code from the data automatically. In fact, I seem to remember that the EXOS file analyzer - http://epbas.lgb.hu/ - works out which is code and data.

Offline BruceTanner

  • EP lover
  • *
  • Posts: 594
  • Country: gb
  • OS:
  • Linux (Ubuntu) Linux (Ubuntu)
  • Browser:
  • Firefox 81.0 Firefox 81.0
    • View Profile
Re: EXOS source code?
« Reply #4 on: 2020.September.28. 15:07:08 »
I also believe that the community has the original source code somewhere - part of the stuff from Werner Lindner (technical director of ENTERPRISE Computers GmbH). Is that right?
Yes that is correct, but unfortunately not online yet. The files we got from Werner are very jumbled and mixed up with files of other things. As if someone tried to do backups onto floppy disks of several projects but got all the disks muddled. Zozosoft has done a lot of work with them to sort them out and make them usable with the eventual aim of putting them on his website http://enterprise.iko.hu/ but he has been very quiet on the forum lately, hopefully temporarily.

Offline gflorez

  • EP addict
  • *
  • Posts: 3488
  • Country: es
    • Támogató Támogató
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 81.0 Firefox 81.0
    • View Profile
Re: EXOS source code?
« Reply #5 on: 2020.September.28. 15:43:58 »
The EXOS ROM actually contains some of the code for BASIC!

Yes... it is not a simple 16KB cartridge Rom....

Offline emptiness

  • Beginner
  • *
  • Posts: 33
  • OS:
  • Linux (Ubuntu) Linux (Ubuntu)
  • Browser:
  • Firefox 81.0 Firefox 81.0
    • View Profile
Re: EXOS source code?
« Reply #6 on: 2020.October.04. 20:30:14 »
Thanks for all the responses.

Some direct links (the first one is in Hungarian, but in HTML format, so can be easily Google-translatet):
http://ep.homeserver.hu/Dokumentacio/Konyvek/Enterprise_128-as_ROM_visszafejtese_0_szegmens/ROM_0.htm

Cool, thanks. It appears to be incomplete though.

The second one is in Hungarian as well, a scanned PDF, no OCRed, so a bit difficult to translate:
http://ep.homeserver.hu/PDF/Segment_1.pdf

Yeah, that's going to be a little tough for me :)  My Hungarian knowledge is still extremely limited even after some hours on duolingo. :|


I have a partial disassembly (in English) that I made for fun a few years ago. It's probably 25% done. I worked out where the main bits were - reset code, WP, device drivers, BASIC functions etc. (The EXOS ROM actually contains some of the code for BASIC!) But I didn't get around to sorting out all the data or annotating everything. Unfortunately I don't have access to it at the moment, but I'll try to get hold of it and tidy it up so it's useful to someone else.

Thanks!

Not as sophisticated as emulation, but several modern Z80 disassemblers will try to sort the code from the data automatically. In fact, I seem to remember that the EXOS file analyzer - http://epbas.lgb.hu/ - works out which is code and data.

I'll have a go running epbas on the ROM image. I might as well try skoolkit too.