Sunday, 7 October 2012

Upgrading / Aranym and the miniPack


Upgrading:


Other computing systems get upgraded from time to time.  'New' operating systems to replace the 'outdated' or no longer supported systems.  Almost every year there's a new release of mac os, and slightly less frequently the release of a re-versioned and re-imagined windows.  Android and other mobile phone users complain when they can't immediately get the latest versions of their operating system.

Of course there are a few expectations and hopes we all want from a system upgrade.  Perhaps, most importantly, that it will be 'pain free', that we get to keep all our data, and that our machine can still boot - ie; that we don't turn it into a brick.  The expectation with an aranym system is that I can make a reasonable backup (preferably off site) and then go back to the old setup if everything goes wrong.
So the next expectation is that everything that already worked will still work.. The so-called backward compatibility.  There are no promises with the mainstream operating systems, but they do tend to try fairly hard to not break anything intentionally.  I haven't tried running any windows 3.1 software on windows 7, but I know that mac os 9 software and now power pc software won't be running on Mac OS 10.7 or 10.8.
Our expectation for Gem / emuTos / Freemint is much higher: anything that uses the published interfaces should continue to run.. Otherwise, we call it a bug and hope that there's a patch released.
A final expectation is perhaps the most important for testing new releases.. in that we hope to be able to understand the process, and that it takes few steps, and takes little time, in that it is not such a huge undertaking that we postpone it indefinitely.  I suspect that many windows XP and vista users haven't gone to the latest available option because of the expectation that it is complicated, time consuming and slightly worrying... What will need re-installing from scratch, what software will just disappear.
We have an advantage then, that our upgrades are faster (because the operating system is just the operating system), simpler (because we can just move or rename disk images / edit configs and reboot), and more reliable (well at least simpler to revert if it just doesn't work).

So what am I doing and why... Basically I've been chickening out of upgrading, and the more often I do it, the more easy and quick it becomes, and the more often others do it, the more likely we have more reliable systems, and the more likely we can report problems that happen from one version to the next, so that these problems can be fixed.  By showing how quick and easy and understandable it is, the better.
You can also use the same software if you don't have an existing working setup and just start from scratch.

So here is my plan..


* Download the latest of everything from the following two sites:

 - This image of the os should includes the latest Emutos rom, the latest stable mint release, the latest xaaes (the bit that runs gem programs), and hopefully fvdi (the bit that does fonts and graphics).  
[Unfortunately the miniPacks are not obviously versioned so what you end up with may be more modern than what I get.]

* Backup the old config.  Also note that the old boot disk might be worth backing up.

* Install the 'boot disk' from the miniPack (by copying the image and editing the aranym config to use it).

* I also want to include as much of my previous mint config as possible, so I will be copying my /mint/xxx/mint.cnf over as well:


So here goes:

start: Backup the old config:
 Copy 'config' and '/mint/' folders to a new directory. Zip them up. login to box.net. upload.
 4 meg zip file uploaded 

0h 05m Open the minipack.zip and take a look.
 in Aranym_files rename 'disk.img' to 'miniPack.img'
 Add a folder in the Aranym config area called 'miniPack' and copy all the files over.
 Copy the new config one directory up and 
Edit the Config:

wherever there's a reference to xxx.img add miniPack in front:

[GLOBAL]
EmuTOS = miniPack/etos512k.img

[IDE0]
Present = Yes
IsCDROM = No
ByteSwap = No
ReadOnly = No
Path = miniPack/miniPack.img

Add back 'drive_c' (a folder on my machine) as a hostfs: (so I can fix the mint.cnf how I want it)
[HOSTFS]
E = drive_c

0h 17m Boot to desktop and
(tried with MacAranym present in the miniPack.. failed with the following message:
 FATAL ERROR. You must reboot the system
[update 2012 Oct 11 - there's a new release of MacAranym JIT 0.9.14 and that has probably been bundled with the latest minipack]
)
0h 25m tried with MacAranym fresh download..
 and boots ok.  I noted that there's a problem with the keyboard, but I'll fix that later.

0h 28m Copy over their mint.cnf from the 'C:/mint/' to 'E' so I can edit it on my mac [otherwise use qed].

If you can access drive 'E' then copy anything from the mint folder that you'd like to keep to the 'C' mint folder (if they've left room).

Editing the mint.cnf:
- Take your time over comparing and merging the new file from the .img and the existing from previous configuration.  As I have plenty of references to 'D' then I need to
- Add back drive 'D' ([partition 0] entries) -- see previous posts on how to create a 'D' from scratch.
- copy over ext2.xfs to 'C:/mint/'
And do a proper shutdown before I start up again (to get the aranym config file read properly).

To check this is working how I expect,
In toswin2 select 'start shell'..

0h 40m To fix the keyboard.. open two windows (double click the 'C' drive icon twice):
  C:/mint/
and 
  C:/mint/keyboard/your_choice/ (I chose Britain)

Copy your keyboard.tbl to the C:/mint/ window
 and Reboot (ie; just from the desktop).

.. And we're done ..


Comments on the current releases of the available emulators (as tested on an intel mac os 10.6.8)
MA jit - broken in 9.14
MA MMU - Too slow to consider running for any length of time
MA jit IEEE - 9.13.2 works well. CPU usage high

With thanks to:

François Le Coat (preparer of miniPack) : http://eureka.atari.org/miniPack.zip
Also of interest: (examples of aranym tuned specifically suitable for different tasks such as doing a better falcon emulation)



Friday, 5 October 2012

addendum.. what else was missing.

There was something not quite right about the previous entry.  When I was booting it was still giving me very little on screen, and so I was suspicious that my actual auto folder was being ignored.. In the logs I had a few auto folders but that didn't match my files..
To cut the story short, I'd previously moved mintara.prg sideways and never found it again, and so never configured the system to boot that way.
Adding a couple of lines to the Aranym config file:


Bootstrap = system/mintara.prg
BootstrapArgs = DEBUG_LEVEL=1 BOOT_DELAY=0 MEM_PROT=NO

and finding my existing mintara.prg

meant I was now booting with the right version.. The boot screen displays lots more and asks me about resolutions, except it then crashes with a bus error..  The last line in the logs is something about xaaes img files..
So I renamed the
[boot]/mint/xaaes/img folder,
rebooted and so got to the desktop.

The mouse pointer is still screwy but I'm guessing I'll do a fresh install soon.

Thursday, 4 October 2012

Finally fixed.. Madness!!

So this was all of my own insanity.

The aranym likes to boot from 'C'.
The 'C' drive can be mapped to anywhere in the world, for the purposes of boot.

My aranym config had:

[HOSTFS]
E = drive_c

(leaving nothing set for 'C') because that's how you let the 'gem' (ide0) partitions boot stuff for you.

But that means all my config (stored in drive_c/mint/xxxx/mint.cnf) is ignored..

So to boot with /Users/your-name-here/Documents/Aranym_files/drive_c/auto (local files on the mac side).
do:

[HOSTFS]
C = drive_c
or
[HOSTFS]
C = /Users/your-name-here/Documents/Aranym_files/drive_c

(and also repeat the same thing again for 'E' .. otherwise we end up with a mint conf that refers to stuff on 'E' which also doesn't exist and we get infinte reboots).

and we're back to programming... 

(except I'm running an old xaaes and the mouse pointer is broken..) 

Just out of curiosity, I changed the ByteSwap = No to a Yes..
and got alot more of the following:

pid  11 (desktop): nfs_root
pid  11 (desktop): nfs_root(3) -> ENXIO
pid  11 (desktop): Minix-FS (D): m_root enter
pid  11 (desktop): Minix-FS (D): minix_sanity enter.
pid  11 (desktop): Minix-FS (D): invalid MAGIC in 1.
pid  11 (desktop): Minix-FS (D): minix_sanity leave r = -46
pid  11 (desktop): Minix-FS (D): m_root leave -46
pid  11 (desktop): nfs_root
pid  11 (desktop): nfs_root(3) -> ENXIO
pid  11 (desktop): Minix-FS (D): m_root enter
pid  11 (desktop): Minix-FS (D): minix_sanity enter.
pid  11 (desktop): Minix-FS (D): invalid MAGIC in 1.
pid  11 (desktop): Minix-FS (D): minix_sanity leave r = -46
pid  11 (desktop): Minix-FS (D): m_root leave -46
pid  11 (desktop): nfs_root
pid  11 (desktop): nfs_root(3) -> ENXIO
pid  11 (desktop): Minix-FS (D): m_root enter
pid  11 (desktop): Minix-FS (D): minix_sanity enter.
pid  11 (desktop): Minix-FS (D): invalid MAGIC in 1.
pid  11 (desktop): Minix-FS (D): minix_sanity leave r = -46
pid  11 (desktop): Minix-FS (D): m_root leave -46
pid  11 (desktop): nfs_root
pid  11 (desktop): nfs_root(3) -> ENXIO
pid  11 (desktop): Minix-FS (D): m_root enter
pid  11 (desktop): Minix-FS (D): minix_sanity enter.
pid  11 (desktop): Minix-FS (D): invalid MAGIC in 1.
pid  11 (desktop): Minix-FS (D): minix_sanity leave r = -46
pid  11 (desktop): Minix-FS (D): m_root leave -46
pid  10 (taskbar): nfs_root
pid  10 (taskbar): nfs_root(3) -> ENXIO
pid  10 (taskbar): Minix-FS (D): m_root enter
pid  10 (taskbar): Minix-FS (D): minix_sanity enter.
pid  10 (taskbar): Minix-FS (D): invalid MAGIC in 1.
pid  10 (taskbar): Minix-FS (D): minix_sanity leave r = -46
pid  10 (taskbar): Minix-FS (D): m_root leave -46

and then switched it back to NO.

and still got one...

pid   0 (MiNT): nfs_root
pid   0 (MiNT): nfs_root(3) -> ENXIO
pid   0 (MiNT): Minix-FS (D): m_root enter
pid   0 (MiNT): Minix-FS (D): minix_sanity enter.
pid   0 (MiNT): Minix-FS (D): invalid MAGIC in 1.
pid   0 (MiNT): Minix-FS (D): minix_sanity leave r = -46
pid   0 (MiNT): Minix-FS (D): m_root leave -46
pid   0 (MiNT): Ext2-FS [D]: WARNING: mounting unchecked fs, running e2fsck is recommended
pid   1 (xaloader): run_km(\c\mint\1-17-0\xaaes\xaaes.km) ok (bp 0x6EDC0E0)!

but the file system is working normally (ie; good).  I did eventually find e2fsck, but I'm no expert on specifying the parameters for that..

more clues...

I also note that on reboot, none of my usual mint config is being loaded.. (from host fs which is mounted as drive 'E')

Perhaps this is why...


pid   0 (MiNT): arafs: __unlink_cookie: nlink > 0, inode not deleted
pid   0 (MiNT): block_IO []: ../block_IO.c, 96796672: Specified cache size too small (0).
pid   1 (xaloader): run_km(\c\MINT\XAAES\xaaes.km) ok (bp 0x6F360E0)!

This suggests its loading xaaes module from the 'C:' drive.. which probably means xfs extensions are not being loaded (in particular ext2.xfs).

So I copied ext2.xfs and rebooted and so re-gained access to all the files on 'd'.
But still for whatever reason I couldn't boot from 'E' despite setting:
'BootDrive = E'
in aranym 'config'

hints of success??

So I notice the following in the boot logs..


EmuTOS 2008/02/07 loading from '/Users/###/Documents/Aranym_files/etos512k.img'... [OK]
Reseting weird mouse packet: 396, -303, 0
hda: GEM
sda: LNX
sdb: LNX
ada: Non-ATARI root sector
...

with the following in my config file:
[IDE0]
Present = Yes
IsCDROM = No
ByteSwap = No
ReadOnly = No
Path = disk.img
#Path = disk_hk_11042012.img
Cylinders = 16
Heads = 16
SectorsPerTrack = 63
ModelName = Master

[IDE1]
Present = No

[PARTITION0]
Path = easymint_d.img
Present = Yes
PartID = LNX
ByteSwap = No
ReadOnly = No
[PARTITION1]
Path = __gigtest.img
Present = Yes
PartID = LNX
ByteSwap = Yes
ReadOnly = No

So aranym knows that these partitions exist..

Wednesday, 3 October 2012

broken borken borked...

So I've not done much recently.. basically I was really confused about what was broken when trying newer versions of software...
So I had a look at everything and tried to figure out whats going on..
Firstly there are 5x MacARAnyM on my machine..

Attempt 1:

MacARAnyM 0.9.9 (Universal)
- boots to desktop..
complains mintsett invalid S?_ and drive d not found.
(booting to xaaes 1.2.1 beta) ..

So I thought I'd swap down to an older version of the desktop.. So following the flow of how any of this works.. that was loaded because in the config I've got..
Path = disk_hk_11042012.img
which will be a 'base' distribution..

Attempt 2:

 So again back to an old 'disk.img'. boots to desktop. No complaints.. but still no drive 'd'.. Which means all the mint stuff isn't visible or working.. Any clues in the logs??

 ... to be continued ...


--> Aranym_files 0
--> /Users/mw6/Documents/Aranym_files 1
ARAnyM 0.9.9
Using config file: '/Users/mw6/Documents/Aranym_files/config'
WM Icon not found at /Users/mw6/Desktop/EVERYTHING/Projects/aranym_hiding/MacAranym.app/wm_icon.bmp
2012-10-03 16:53:05.793 MacAranym[8148:903] Warning once: This application, or a library it uses, is using NSQuickDrawView, which has been deprecated. Apps should cease use of QuickDraw and move to Quartz.
TunTap(0): open('tap0')
TunTap(0): tapOpenOld /dev/tap0
TunTap(0): NO_NET_DRIVER_WARN 'tap0': No such file or directory
TunTap(1): tunnel name undefined
TunTap(2): tunnel name undefined
TunTap(3): tunnel name undefined
Could not open joystick 0
OS ROM image '/Users/mw6/Documents/Aranym_files/ROM' not found.
EmuTOS 2008/02/07 loading from '/Users/mw6/Documents/Aranym_files/etos512k.img'... [OK]
Reseting weird mouse packet: 498, -567, 0
hda: GEM
sdb: LNX
ada: Non-ATARI root sector
adb: Non-ATARI root sector
adc: Non-ATARI root sector
add: Non-ATARI root sector
ade: Non-ATARI root sector
adf: Non-ATARI root sector
adg: Non-ATARI root sector
adh: Non-ATARI root sector
PUN INFO: max sector size = 512
BDOS: Address of basepage = 000130a0
BDOS: cinit - osinit successful ...
NF BOOTSTRAP_ARGS()
NF BOOTSTRAP(mintara.prg -> 0x377ba, 14414662)
NF BOOTSTRAP(0x377ba, 14414662) -> 0
Loading \AUTO\BCONOUT.PRG ... [OK]
Loading \AUTO\SPDGDOS.PRG ... [OK]
Loading \AUTO\ZMAGXSND.PRG ... [OK]
Loading \AUTO\CLOCKY.PRG ... [OK]
Loading \AUTO\LDG.PRG ... [OK]
Loading \AUTO\MINTNP.PRG ... realloc_region: reg = 0, newsize 256
realloc_region: reg is NULL
HOSTFS: fs_native_init:
fs_drv   = 0x249c30
fs_devdrv  = 0x249cd4
fs_devnum  = 0x36
fs_mountPoint = u:\e
fs_hostRoot   = /Users/mw6/Documents/Aranym_files/drive_c [41]

HOSTFS: fs_native_init:
fs_drv   = 0x249c30
fs_devdrv  = 0x249cd4
fs_devnum  = 0x39
fs_mountPoint = u:\h
fs_hostRoot   = /Users/mw6/Documents/Aranym_files [33]

pid   0 (MiNT): FAT-FS [C]: WARNING: mounting unchecked fs, running dosfsck is recommended
pid   0 (MiNT): Found MiNT 1.17 with kerinfo version 2
pid   0 (MiNT): arafs: Dcntl(FS_INSTALL) descr=6FD
pid   0 (MiNT): arafs: Dcntl(FS_MOUNT) dev_no: 256
pid   0 (MiNT): arafs.c: init
pid   0 (MiNT): arafs: ok (dev_no = 0)
pid   0 (MiNT): arafs: ara_root E_OK (256)
pid   0 (MiNT): block_IO []: ../block_IO.c, 96796672: Specified cache size too small (0).
pid   1 (xaloader): run_km(\c\MINT\XAAES\xaaes.km) ok (bp 0x6F380E0)!
Reseting weird mouse packet: -458, -223, 0
pid   4 (AESSYS): fcntl(TIOCGETP) -> 0
pid   4 (AESSYS): sg.sg_flags 0x10
pid   4 (AESSYS): fcntl(TIOCSETN) -> 0