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

Friday, 8 July 2011

EasyMiNT again...

After using aranym+freemint for a while I found I didn't have any space left on my development ext2 partition. I suspect there are much easier ways of sorting this out, but here's what I did.. Basically this was just to get the basic 'sparemint' rpm distribution installed (basic unix filesystem) + a few extra utils.

So my starting point is a drive C (gem) and drive d (512meg ext) partitions. Somehow I have previously downloaded a system that boots to the emutos desktop but running mint. I have easymint: em.170 which I suspect is from the file EM_170.zip downloaded from massi Soft.
I'd reconfigured the system to boot from E. which actually turned out to be fine because my 'C' boot up didn't work, it also appears that EasyMiNT requires a working mint.
Before you re-run easymint - the installer,
-check that there are a bunch of files in c/em.170/pakete/
Files are *.tar and *.list.
-delete the tmp folder in c/easymint/tmp -- this tells easymint that it needs to start again from scratch.

The problem I had was that I wanted to replace drive D with a bigger one. So I had to create a blank ext2 partition. You can save yourself so much time by using either the built in one in aranym but instead I installed something on the mac called "Ext2FS_1.4d4"
All that was just so I could type dd and mkfs according to these instructions..

So after all that pain I had a working 1.5 gig ext2 partition.. for the record:
>dd if=/dev/zero of=./gigtest.img bs=1024k count=1536
>/usr/local/sbin/mke2fs ./gigtest.img
but mostly there must be an easier way (eg; find a debian machine and tar.gz the results..)

So the extra pain was that there were alot of trouble editing files on the C drive so that I could re-run easymint. And more pain trying stuff where drive C just wouldn't boot up.

Oh, the final result... (if only the terminal would let me copy and paste)..

>df -h
Filesystem Size Used Avail Use% Mounted on
c:/ 250M 225M 25M 90% u:/
d:/ 1.5G 329M 1.1G 22% u:/
e:/ 37T 23T 14T 62% u:/
r:/ 262M 8.0k 261M 1% u:/
u:/ 1.5G 329M 1.1G 22% u:/

So it looks like the base install uses 329 meg.

Thursday, 18 November 2010

gcc and gmp and mac

This is only relevant if you have a mac and want to use libgmp (gnu multi precision library), with perl.

My problems were as follows:
a) the default c compiler was giving me grief.
b) In CPAN, the library by default was not being detected even though it was being built.
c) going out of cpan and doing things 'manually' allowed me to specify the directory the library was installed in.
d) the architecture was still wrong. (because my perl was 32 bit)

1. gcc 4.0 is not supported. gcc 4.2 is..
make clean
CC=gcc-4.2 CXX=g++4.2 ./configure
make
make check
[tests pass, -m64 is visible in libtool]
sudo make install
file usr/local/
file /usr/local/lib/libgmp.10.dylib
/usr/local/lib/libgmp.10.dylib: Mach-O 64-bit dynamically linked shared library x86_64

2. CC=gcc-4.2 CXX=g++4.2 CFLAGS='-m64' ./configure
file /usr/local/lib/libgmp.10.dylib
/usr/local/lib/libgmp.10.dylib: Mach-O 64-bit dynamically linked shared library x86_64

(no change.. the problem is we want to link with a 32 bit perl, partly because that's the system provided one, partly because I don't want to recompile perl at this stage).

3. CC=gcc-4.2 CXX=g++4.2 CFLAGS='-m32' ./configure
..
configure: error: Oops, mp_limb_t is 32 bits, but the assembler code
in this configuration expects 64 bits.

...
reading
info ./doc/gmp.info

"By default GMP chooses the best ABI available for a given system,
and this generally gives significantly greater speed. But an ABI can
be chosen explicitly to make GMP compatible with other libraries, or
particular application requirements. For example,

./configure ABI=32
"
...
so..

4. CC=gcc-4.2 CXX=g++4.2 CFLAGS='-m32' ./configure ABI=32
make
make check
[all going well]
sudo make install
mw6$ file /usr/local/lib/libgmp.10.dylib
/usr/local/lib/libgmp.10.dylib: Mach-O dynamically linked shared library i386

that looks like a win.
Now try and install math::bigint::gmp in perl...
>perl512 ./Makefile.PL INC="-I/usr/local/include" LIBS="-L/usr/local/lib -lgmp"
Writing Makefile for Math::BigInt::GMP
>make
>make test
t/bigfltpm.t .. ok
t/bigintg.t ... ok
t/bigintpm.t .. ok
t/biglog.t .... ok
t/bigroot.t ... ok
t/pod.t ....... ok
t/pod_cov.t ... ok
t/storable.t .. ok
t/threads.t ... skipped: Perl compiled without ithreads
All tests successful.
Files=9, Tests=5537, 4 wallclock secs ( 0.64 usr 0.06 sys + 3.84 cusr 0.14 csys = 4.68 CPU)
Result: PASS

> sudo make install
Files found in blib/arch: installing files in blib/lib into architecture dependent library tree
Installing /Users/mw6/usr/local/lib/perl5/site_perl/5.12.0/darwin-2level/auto/Math/BigInt/GMP/GMP.bs
Installing /Users/mw6/usr/local/lib/perl5/site_perl/5.12.0/darwin-2level/auto/Math/BigInt/GMP/GMP.bundle
Installing /Users/mw6/usr/local/lib/perl5/site_perl/5.12.0/darwin-2level/Math/BigInt/GMP.pm
Installing /Users/mw6/usr/local/share/man/man3/Math::BigInt::GMP.3
Appending installation info to /Users/mw6/usr/local/lib/perl5/5.12.0/darwin-2level/perllocal.pod


WIN!

Relevant Links:
GMP: The GNU Multiple Precision Arithmetic Library
Math::BigInt::GMP: Use the GMP library for Math::BigInt routines (v1.32 23 Sept 2010)