NetBSD 7.1 on the Atari TT
Re: NetBSD 7.1 on the Atari TT
Have been battling time and failures. The New Year has started with a bang. My day job is keeping me away from the land of Atari and to top it all my main computer (where I have been compiling NetBSD) has had a motherboard failure and am waiting a new board.
However despite these annoying distractions I have managed to get the Falcon code for IDE into a kernel for NetBSD 7.1.1. Not so impressed with my coding as its hacky (being a quality software developer manager I need to give myself a good talking to). I intend to clean up and create a proper selection for this in NetBSD code using flags etc.
However I am at the kernel panic / debug stage as it is bombing at the initialising the wdc0 at mainbus0 on startup.
However despite these annoying distractions I have managed to get the Falcon code for IDE into a kernel for NetBSD 7.1.1. Not so impressed with my coding as its hacky (being a quality software developer manager I need to give myself a good talking to). I intend to clean up and create a proper selection for this in NetBSD code using flags etc.
However I am at the kernel panic / debug stage as it is bombing at the initialising the wdc0 at mainbus0 on startup.
Re: NetBSD 7.1 on the Atari TT
So still no further forward - kernel panics. Have been battling work and not the Atari world . Just wanted to post an update.
Currently I have a new kernel config which I have called ATARITT-THUNDER it is set to activate the IDE-bus using the following in the kernel config:
However this is not the only thing that is needed as there are a few statements around IDE code in the wdc_mb.c file that need to allow the TT to use those branches.
From what I can gather these will allow the kernel to run this on the Atari TT with the Thunder board. There are some items I have questions around. Firstly does the Thunder card use the same address space as the Falcon:
There is also some initiation with the Atari Falcon to turn on the IDE before its probed by tapping the ym2149. Which I believe Port A has a bit to turn the IDE on or off (handy doc on Atari hardware registers http://deunstg.free.fr/sct1/hardware.htm)
When booting with the new kernel it panics initialising the wdc. I am still in the process of debugging to see where thesis failing.
On another note I am also compiling xfce4 for this NetBSD build so as to have a half decent desktop from twm. This has resulted in many packages that are not in the existing repositories for Atari NetBSD.
Currently I have a new kernel config which I have called ATARITT-THUNDER it is set to activate the IDE-bus using the following in the kernel config:
Code: Select all
wdc0 at mainbus0 # IDE-bus
atabus* at wdc? channel ?
wd* at atabus? drive ?
Code: Select all
if (machineid & ATARI_FALCON)
Code: Select all
/* Falcon IDE register locations (base and offsets). */
#define FALCON_WD_BASE 0xfff00000
#define FALCON_WD_LEN 0x40
#define FALCON_WD_AUX 0x38
Code: Select all
ym2149_ser2(0);
On another note I am also compiling xfce4 for this NetBSD build so as to have a half decent desktop from twm. This has resulted in many packages that are not in the existing repositories for Atari NetBSD.
Re: NetBSD 7.1 on the Atari TT
How TT specific is all this?
I'm very interested in getting a modern unix onto my Falcon CT60e and the existing Debian m68k seems old and lacking from active maintaining.
I'm very interested in getting a modern unix onto my Falcon CT60e and the existing Debian m68k seems old and lacking from active maintaining.
Re: NetBSD 7.1 on the Atari TT
The NetBSD for Atari can be run on a stock ST although its pretty slow and not useable as there is a lot of disabled features. There is support for the TT, Falcon, Hades and Milan. If you were to follow the build walk through on the wiki link posted in the first post http://netbsd-ataritt.wikia.com/wiki/Ne ... tari_TT030 you could get it to build on the Falcon.
I can compile the Falcon kernel and copy it to /. I current use this option to select a kernel at boot by holding the RIGHT-SHIFT key after the memory test. I do this for testing different builds of the Thunder kernel I am playing with.
What I will do is clean up the image (as it has a lot of dev and src floating around) this weekend and post it to work on the Atari TT and have the option to try a Falcon compiled kernel at boot time.
So that said look out for Atari TT NetBSD 7.1 image v1 coming soon - which will be basic NetBSD which can launch X but will not have the xcfe4, Thunder or et4000 support as i am still working on this.
Re: NetBSD 7.1 on the Atari TT
Just built the Falcon kernel and placed in /. I have no way of testing as I don't have a Falcon but it has the options of supporting 68030-060.
As mentioned in the previous post I will clean up the image this weekend and post with instructions thereafter.
Code: Select all
options M68030 # support for 030
options FPU_EMULATE # Support for MC68881/MC68882 emulator
options M68040 # support for 040
options M68060 # support for 060
options FPSP # 68040 Floatingpoint support
options M060SP # MC68060 software support (Required for 060)
- frank.lukas
- Posts: 660
- Joined: Fri Jan 19, 2018 11:52 am
Re: NetBSD 7.1 on the Atari TT
Send a eMail to Izumi Tsutsui about the IDE Interface on the Atari TT ...
Re: NetBSD 7.1 on the Atari TT
Thanks Frank. I also need to reach out to lightning team with some questions around the Thunder card.frank.lukas wrote: ↑Fri Feb 16, 2018 11:48 am Send a eMail to Izumi Tsutsui about the IDE Interface on the Atari TT ...
Re: NetBSD 7.1 on the Atari TT
Yes, it uses the same address space as the Falcon.Icky wrote: ↑Thu Feb 15, 2018 6:54 pm There are some items I have questions around. Firstly does the Thunder card use the same address space as the Falcon:
Code: Select all
/* Falcon IDE register locations (base and offsets). */ #define FALCON_WD_BASE 0xfff00000 #define FALCON_WD_LEN 0x40 #define FALCON_WD_AUX 0x38
The hardwired base address is 0x00FFF000. Anyhow, TOS 3.06 is using the 68030 MMU to map 0xFFFFF000 to 0x00FFF000 as well.
ATA registers will show up from base + 0x00 to base + 0x39.
From your code above I understand:
- FALCON_WD_BASE: Ok, this is the base address
- FALCON_WD_AUX: Ok, this is the offset to the alternate status register, the uppermost ATA register
- FALCON_WD_LEN: Not sure, what this is supposed to do on a Falcon. The Thunder card will throw a bus error when the offset exceeds 0x3F!
The Thunder card can be enabled/disabled by Jumper only.Icky wrote: ↑Thu Feb 15, 2018 6:54 pm There is also some initiation with the Atari Falcon to turn on the IDE before its probed by tapping the ym2149. Which I believe Port A has a bit to turn the IDE on or off (handy doc on Atari hardware registers http://deunstg.free.fr/sct1/hardware.htm)
Code: Select all
ym2149_ser2(0);
Setting the YM2149 port bit has no effect on the Thunder at all.
Re: NetBSD 7.1 on the Atari TT
Thanks for the info pakman - I will take a look and see how this can help with my debugging.pakman wrote: ↑Fri Feb 16, 2018 10:59 pmYes, it uses the same address space as the Falcon.Icky wrote: ↑Thu Feb 15, 2018 6:54 pm There are some items I have questions around. Firstly does the Thunder card use the same address space as the Falcon:
Code: Select all
/* Falcon IDE register locations (base and offsets). */ #define FALCON_WD_BASE 0xfff00000 #define FALCON_WD_LEN 0x40 #define FALCON_WD_AUX 0x38
The hardwired base address is 0x00FFF000. Anyhow, TOS 3.06 is using the 68030 MMU to map 0xFFFFF000 to 0x00FFF000 as well.
ATA registers will show up from base + 0x00 to base + 0x39.
From your code above I understand:
- FALCON_WD_BASE: Ok, this is the base address
- FALCON_WD_AUX: Ok, this is the offset to the alternate status register, the uppermost ATA register
- FALCON_WD_LEN: Not sure, what this is supposed to do on a Falcon. The Thunder card will throw a bus error when the offset exceeds 0x3F!
The Thunder card can be enabled/disabled by Jumper only.Icky wrote: ↑Thu Feb 15, 2018 6:54 pm There is also some initiation with the Atari Falcon to turn on the IDE before its probed by tapping the ym2149. Which I believe Port A has a bit to turn the IDE on or off (handy doc on Atari hardware registers http://deunstg.free.fr/sct1/hardware.htm)
Code: Select all
ym2149_ser2(0);
Setting the YM2149 port bit has no effect on the Thunder at all.
Re: NetBSD 7.1 on the Atari TT
Here it is the first version of the AtariTT NetBSD 7.1 image.
There are probably loads of things I have missed but this is the first version so all feedback / questions welcome.
Firstly I would like to thank exxos and IngoQ for helping me with hosting the file.
So here are some instructions to get you started:
Download the file https://hub.e-quade.de/exxos/netbsd-atari-7.1.zip and unzip to the file netbsd-7.1-ataritt-v1.img
Just a warning the file is about 1.3GB in size
Using the unix command dd copy the image to your disk such as SD card which I use a Gigafile. On a Unix, Linux or OSX machine find the SD card disk device /dev/diskX where X is the disk number of the SD card.
Once you have copied over your image to your physical disk pop it in the Atari TT and boot - be patient (remember the Atari TT is not a fast PC).
There are 3 kernels available by default it loads option 1. To boot into one of the other kernels after the memory test on the Atari hold down the RIGHT-SHIFT key and a boot prompt will appear:
Root account:
Unprivileged user account:
Network is DHCP enabled but may need a bit more configuration:
There are probably loads of things I have missed but this is the first version so all feedback / questions welcome.
Firstly I would like to thank exxos and IngoQ for helping me with hosting the file.
So here are some instructions to get you started:
Download the file https://hub.e-quade.de/exxos/netbsd-atari-7.1.zip and unzip to the file netbsd-7.1-ataritt-v1.img
Just a warning the file is about 1.3GB in size
Using the unix command dd copy the image to your disk such as SD card which I use a Gigafile. On a Unix, Linux or OSX machine find the SD card disk device /dev/diskX where X is the disk number of the SD card.
Code: Select all
dd bs=1m if=netbsd-7.1-ataritt-v1.img of=/dev/diskX
There are 3 kernels available by default it loads option 1. To boot into one of the other kernels after the memory test on the Atari hold down the RIGHT-SHIFT key and a boot prompt will appear:
- netbsd - current Atari TT 7.1.1 kernel with a larger st_pool_size to allow X to work in TT HIGH
- netbsd-7.1 - original Atari TT kernel
- netbsd-7.1-falcon - kernel compiled for Falcon (not tested)
Root account:
- user: root
- password: ataritt
Unprivileged user account:
- user: atarian
- password: ataritt
Network is DHCP enabled but may need a bit more configuration:
- hostname: atari.local
Code: Select all
hostname=atari.local
dhclient=YES
sshd=NO
xdm=NO
- ssh is turned off as ssh slows the system down. I use it but the boot up takes longer.
- xdm is turned off so you have to launch X as startx (only works under root)