Thread: PDOS for Amiga
View Single Post
Old 03 March 2021, 11:05   #15
kerravon
Registered User
 
Join Date: Mar 2021
Location: Ligao, Free World North
Posts: 228
Quote:
Originally Posted by Bruce Abbott View Post
This implies you will be taking over the machine and not using any part of Amiga OS,
Yes, I will never load Amiga OS. I actually have an old Amiga 2000HD I think it is in my cupboard, but I never intend to get it out. I intend to use an emulator if emulators are good enough to do what I need.

Quote:
in which case you will have to write a bit of code to translate characters into graphic patterns - just like you would on other machines that only have bitmap screens (eg. Atari ST).
Thanks for the info on Atari ST. In both cases then, I will read/write to a VT100/ANSI terminal attached to the serial port. I don't want to do anything with graphics.

Quote:
But that's not all. Without the OS you will have to control all hardware at the lowest level, including video output, floppy drives etc. some of which is quite complicated on the Amiga because the custom hardware is not autonomous and requires a fair amount of assistance from the CPU. But don't despair - most games do this, so there is plenty of example code you can use.
With regard to controlling the floppy drive, is Kickstart the equivalent of the BIOS on an IBM PC? If so, I expect that to be available. Replacing the BIOS is a separate exercise.

Quote:
To get something going 'ASAP', I suggest using Amiga OS to handle the low level stuff. Disk drives are treated as block devices, so you can put anything on them. For text output you could open a custom screen and use graphic library functions or render directly to the bitmap. Other hardware such as the keyboard and serial port can also be accessed via their device drivers. The essential parts are in ROM, so they are available before the file system comes up.
No, I don't want to use Amiga OS in this process. To get something ASAP I'm willing to abandon the Amiga API in favor of the Pos API and the Amiga filesystem in favor of the FAT-16 filesystem.

Quote:
To do this you definitely want to keep the OS alive, so you should do so from the start. You could create an interface to it that looks the same as other machines to your OS, but uses Amiga OS functions internally. Ideally it should be fully multitasking friendly, allowing users to run your OS in its own screen without upsetting other programs.
I'm not planning on supporting multitasking. All I want to do is edit C code using micro-emacs and compile it and be able to rebuild GCC and PDOS. Then it's on to some other hardware I'm not familiar with.

Quote:
I suggest learning a bit about Amiga OS now, including exec devices and graphics, then dos when it comes to supporting the 'normal' Amiga file system.
Yes, I'm doing that now. I'm just getting guidance on where to actually start, assuming what I want to do is even technically possible.

Quote:
The other alternative is to duplicate everything in your own code, which would be a lot of work and preclude running your OS in a multitasking environment. Only do this if you really want your OS to take over the whole machine.
I managed to get GCC running on PDOS/3X0 in under 10,000 lines of code, using an alien (native) file system and executable format. I took some shortcuts to do that. I'm planning on taking a different approach with the Amiga, by bringing an existing file system with me.

Note that once the work had already been done to make GCC C90-compliant (which was done as a separate project), GCC is basically a glorified "hello, world".
kerravon is offline  
 
Page generated in 0.07777 seconds with 11 queries