Interested Developer

25 views
Skip to first unread message

JohnnyForeigner

unread,
Nov 19, 2008, 5:34:55 PM11/19/08
to inferno-ds
Hello all, i am a ds owner, C programmer and interested in the inferno
platform and wondered if there were anything i might be able to
attempt that is relatively simple so i could attempt to learn the
ropes on this project.

Any help appreciated.

Thanks

Salva Peiró

unread,
Nov 20, 2008, 3:44:33 AM11/20/08
to infer...@googlegroups.com

"luckily, there is enough work to be done! "
-- from http://code.google.com/p/inferno-ds/wiki/DSPortStatus

I'd recommend first to take a look at the ``Inferno DS: Inferno port
to the Nintendo DS'' [1]
and to the information on the wiki, those documents cover the current
status of the DS port
and the future directions for development.

After having an overall idea of the port just build a kernel image and
start using it.

[1] http://inferno-ds.googlecode.com/svn/trunk/doc/infds.pdf

If you get stuck somewhere, don't hesitate to ask.
--
salva

JohnnyForeigner

unread,
Nov 20, 2008, 6:36:46 PM11/20/08
to inferno-ds
Hello ,

So i took a look at some of the literature downloaded the pre
built .nds from the site (which i ssume is old?) set up inferno on my
system which works fine and have the devkitpro stuff installed,
pulled the source from svn as written in INSTALL, type mk from both
inferno and bash and get:

warning: skipping missing include file: ../../mkconfig: No such file
or directory
warning: skipping missing include file: /mkfiles/mkfile--arm: No such
file or directory
sh: ../port/mkdevlist: not found
bad include program status

any ideas what i missed?

Salva Peiró

unread,
Nov 21, 2008, 4:24:10 AM11/21/08
to infer...@googlegroups.com

The relevant error is on the first line, where mk complains about not
being able to source ../../mkconfig.
The rest of errors happen as a consequence of the first.

Double check that you've downloaded everything as explained in the INSTALL:
http://code.google.com/p/inferno-ds/source/browse/trunk/INSTALL

Inferno should be in /usr/inferno, and the DS port should be in
/usr/inferno/os/ds.
With this organization the /usr/inferno/mkconfig should be reachable
by mk from /usr/inferno/os/ds.

hope that helps,
good luck
--
salva

JohnnyForeigner

unread,
Nov 22, 2008, 9:01:22 AM11/22/08
to inferno-ds
Hello,

I sorted the correct folder configuration but now i get a new error:

warning: skipping missing include file: /usr/inferno/mkfiles/mkfile-
Plan9-: No such file or directory
sh: rc: not found
bad include program status

i notice that the variables are being set wrong, i think? So i changed
them to /usr/inferno/mkfiles/mkfile-Inferno-arm but then i still get:

sh: rc: not found
bad include program status

Any ideas?

Noah Evans

unread,
Nov 22, 2008, 9:10:10 AM11/22/08
to infer...@googlegroups.com
Can you post your mkconfig?

Sent from my iPhone

On Nov 22, 2008, at 9:01 AM, JohnnyForeigner <thomas....@googlemail.com

JohnnyForeigner

unread,
Nov 22, 2008, 9:18:05 AM11/22/08
to inferno-ds
Ah i see

#
# Set the following 4 variables. The host system is the system where
# the software will be built; the target system is where it will run.
# They are almost always the same.

# On Nt systems, the ROOT path MUST be of the form `drive:/path'
ROOT=/usr/inferno

#
# Specify the flavour of Tk (std for standard builds)
#
TKSTYLE=std

#
# Except for building kernels, SYSTARG must always be the same as
SYSHOST
#
SYSHOST=Plan9 # build system OS type (Hp, Inferno, Irix, Linux, Nt,
Plan9, Solaris)
SYSTARG=$SYSHOST # target system OS type (Hp, Inferno, Irix, Linux,
Nt, Plan9, Solaris)

#
# specify the architecture of the target system - Plan 9 imports it
from the
# environment; for other systems it is usually just hard-coded
#
#OBJTYPE=386 # target system object type (s800, mips, 386, arm,
sparc)
OBJTYPE=$objtype

#
# no changes required beyond this point
#
OBJDIR=$SYSTARG/$OBJTYPE

<$ROOT/mkfiles/mkhost-$SYSHOST # variables appropriate for host
system
<$ROOT/mkfiles/mkfile-$SYSTARG-$OBJTYPE # variables used to build
target object type

i'll have a go at editing it, i assume i want to edit it for the
target system of the ds?


On Nov 22, 2:10 pm, Noah Evans <noah.ev...@gmail.com> wrote:
> Can you post your mkconfig?
>
> Sent from my iPhone
>
> On Nov 22, 2008, at 9:01 AM, JohnnyForeigner <thomas.nick...@googlemail.com

Noah Evans

unread,
Nov 22, 2008, 9:20:42 AM11/22/08
to infer...@googlegroups.com
Inferno arm and the right root should do you

Sent from my iPhone

On Nov 22, 2008, at 9:18 AM, JohnnyForeigner <thomas....@googlemail.com

JohnnyForeigner

unread,
Nov 22, 2008, 9:20:59 AM11/22/08
to inferno-ds
Changed to #
# Set the following 4 variables. The host system is the system where
# the software will be built; the target system is where it will run.
# They are almost always the same.

# On Nt systems, the ROOT path MUST be of the form `drive:/path'
ROOT=/usr/inferno

#
# Specify the flavour of Tk (std for standard builds)
#
TKSTYLE=std

#
# Except for building kernels, SYSTARG must always be the same as
SYSHOST
#
SYSHOST=Inferno # build system OS type (Hp, Inferno, Irix, Linux, Nt,
Plan9, Solaris)
SYSTARG=$SYSHOST # target system OS type (Hp, Inferno, Irix, Linux,
Nt, Plan9, Solaris)

#
# specify the architecture of the target system - Plan 9 imports it
from the
# environment; for other systems it is usually just hard-coded
#
#OBJTYPE=arm # target system object type (s800, mips, 386, arm,
sparc)
OBJTYPE=$objtype

#
# no changes required beyond this point
#
OBJDIR=$SYSTARG/$OBJTYPE

<$ROOT/mkfiles/mkhost-$SYSHOST # variables appropriate for host
system
<$ROOT/mkfiles/mkfile-$SYSTARG-$OBJTYPE # variables used to build
target object type

with the following errors

warning: skipping missing include file: /usr/inferno/mkfiles/mkfile-
Inferno-: No such file or directory

Noah Evans

unread,
Nov 22, 2008, 9:23:13 AM11/22/08
to infer...@googlegroups.com
You might want to uncomment arm and put it before objtype

Sent from my iPhone

On Nov 22, 2008, at 9:20 AM, JohnnyForeigner <thomas....@googlemail.com

JohnnyForeigner

unread,
Nov 22, 2008, 9:27:05 AM11/22/08
to inferno-ds
heh, good spot

Still get the error:

/bin/sh: Can't open ../port/mkdevlist
bad include program status

Noah Evans

unread,
Nov 22, 2008, 9:29:09 AM11/22/08
to infer...@googlegroups.com
What is your command line?

Sent from my iPhone

On Nov 22, 2008, at 9:27 AM, JohnnyForeigner <thomas....@googlemail.com

JohnnyForeigner

unread,
Nov 22, 2008, 9:30:30 AM11/22/08
to inferno-ds
Bash?

Noah Evans

unread,
Nov 22, 2008, 9:37:48 AM11/22/08
to infer...@googlegroups.com
What dir? What invocation? Mk all?

Sent from my iPhone

On Nov 22, 2008, at 9:30 AM, JohnnyForeigner <thomas....@googlemail.com
> wrote:

>
> Bash?
> >

JohnnyForeigner

unread,
Nov 22, 2008, 9:42:25 AM11/22/08
to inferno-ds
Ah,

tom@Calculatron:/usr/inferno/os/ds$ mk
/bin/sh: Can't open ../port/mkdevlist
bad include program status

there was nothing in my os folder i had to make that, not sure whether
i'm missing something because of that.

Noah Evans

unread,
Nov 22, 2008, 9:53:40 AM11/22/08
to infer...@googlegroups.com
Can you:

ls -l ../port/mkdevlist from your os/ds directory?
and
uname -a so I can see your system?
Can you also tell me what you've done exactly(i.e. which version of
the inferno root you've installed, how you configured it, etc...)

JohnnyForeigner

unread,
Nov 22, 2008, 10:03:18 AM11/22/08
to inferno-ds
Okay so far i installed http://www.vitanuova.com/inferno/downloads.html
for linux and followed the instructions so that it now runs simply by
typing emu (adding /usr/inferno/Linux/386/bin) to path all runs fine
can get to wm/wm etc

pulled the source of inferno-ds from the repositry copied over all the
files to /usr/inferno/os/ds, added ll the files from the /root folder
of the inferno-ds to the inferno install.

Changed the makefile to the correct variables.

I have already installed devkitpro, from previous ds homebrew stuff.

output of ls -l ../port/mkdevlist :

ls: ../port/mkdevlist: No such file or directory

output of uname -a :

Linux Calculatron 2.6.22-15-generic #1 SMP Tue Oct 21 23:47:12 GMT
2008 i686 GNU/Linux





On Nov 22, 2:53 pm, "Noah Evans" <noah.ev...@gmail.com> wrote:
> Can you:
>
> ls -l ../port/mkdevlist from your os/ds directory?
> and
> uname -a so I can see your system?
> Can you also tell me what you've done exactly(i.e. which version of
> the inferno root you've installed, how you configured it, etc...)
>
> On Sat, Nov 22, 2008 at 9:42 AM, JohnnyForeigner
>

Uriel

unread,
Nov 22, 2008, 10:10:46 AM11/22/08
to infer...@googlegroups.com
The stuff at http://www.vitanuova.com/inferno/downloads.html is
ancient and outdated, get the
code from http://code.google.com/p/inferno-os/

(I'm not even sure why that page is around at all, it only serves to
confuse people, it should simply point to inferno-os)

uriel

Noah Evans

unread,
Nov 22, 2008, 10:37:11 AM11/22/08
to infer...@googlegroups.com
On the vitanuova page the os stuff is separate IIRC. You'll need to
download that too, that's why it's not finding mkdevlist. As uriel
said, inferno-os from google code is your best bet. It's the most up
to date tree.

Charles Forsyth

unread,
Nov 22, 2008, 11:38:51 AM11/22/08
to infer...@googlegroups.com
you need to set the mkconfig to reflect your HOST system, not the Inferno target
(the os/ds mkfile will do the latter as required). otherwise it won't
have any idea
how to make the compilers, the loaders, the support programs, etc.

so if you are on Windows, use SYSHOST=Nt, ROOT=c:/inferno (or where
you've put it),
OBJTYPE=386; on Linux, use SYSHOST=Linux, ROOT=/usr/inferno (or where
you've put it),
and probably also OBJTYPE=386 (unless you've got a fancy powerpc or
sparc linux system).

Charles Forsyth

unread,
Nov 22, 2008, 11:45:20 AM11/22/08
to infer...@googlegroups.com
the copy of Inferno you've downloaded will often be adequate, by the way,
depending a bit on your host system.

JohnnyForeigner

unread,
Nov 22, 2008, 12:54:53 PM11/22/08
to inferno-ds
Okay well thanks for all the help, i downloaded and compiled the new
version from google code with os and that helped a lot i'm now getting
some more interesting errors if any one can help?

tom@Calculatron:/usr/inferno/os/ds$ mk
5c -wFV -I/usr/inferno/Inferno/arm/include -I/usr/inferno/include -I/
usr/inferno/libinterp -r fpiarm.c
mk: don't know how to make '/usr/inferno/fonts/lucidasans/lsr.10'

is there anyway to get this font set or do i have to install the font
set and recompile inferno it wasn't initially on my system.


On Nov 22, 4:45 pm, "Charles Forsyth" <charles.fors...@gmail.com>
wrote:

Salva Peiró

unread,
Nov 22, 2008, 3:37:55 PM11/22/08
to infer...@googlegroups.com
On Sat, Nov 22, 2008 at 6:54 PM, JohnnyForeigner
<thomas....@googlemail.com> wrote:
>
> tom@Calculatron:/usr/inferno/os/ds$ mk
> 5c -wFV -I/usr/inferno/Inferno/arm/include -I/usr/inferno/include -I/
> usr/inferno/libinterp -r fpiarm.c
> mk: don't know how to make '/usr/inferno/fonts/lucidasans/lsr.10'
>
> is there anyway to get this font set or do i have to install the font
> set and recompile inferno it wasn't initially on my system.
>

the proper way to obtain those fonts should be to install Inferno
from the packages from the downloads page of vitanuova.com.

Another way is to get them from http://swtch.com/plan9port:

$ wget http://swtch.com/plan9port/plan9port.tgz
$ tar xzvf plan9port.tgz plan9/font/lucsans/
$ mv plan9/font/lucsans /usr/inferno/fonts/lucidasans
--
salva

Charles Forsyth

unread,
Nov 22, 2008, 8:20:46 PM11/22/08
to infer...@googlegroups.com
>the proper way to obtain those fonts should be to install Inferno
>from the packages from the downloads page of vitanuova.com.

he'd only just done that but discarded it in favour of the googlecode copy,
which can't contain the fonts (because of google rules). that reminds me
that i should provide a command in the googlecode copy that will fetch
the fonts for you. i'll do that when i'm back in york.

Uriel

unread,
Nov 22, 2008, 8:17:32 PM11/22/08
to infer...@googlegroups.com
Also note that already probably the .nds images in the inferno-ds page
are in breach of the rules. Rather than working around the problem,
why not fix it once and for ever? (If somebody is so emotionally
attached to the old fonts, they can always install them manually if
they like)

uriel

On Sun, Nov 23, 2008 at 2:13 AM, Uriel <uri...@gmail.com> wrote:
> Why not simply replace the fonts with free ones as acme-sac has done
> and as anybody packaging inferno will have to do anyway? That way this
> will be solved once and for ever.
>
> uriel

Salva Peiró

unread,
Nov 23, 2008, 8:11:19 AM11/23/08
to infer...@googlegroups.com
On Sun, Nov 23, 2008 at 2:20 AM, Charles Forsyth <for...@terzarima.net> wrote:
>

if it helps, i wrote a setupfonts for acme-sac:
http://code.google.com/p/acme-sac/source/browse/trunk/dis/setupfonts?r=102

--
salva

JohnnyForeigner

unread,
Nov 25, 2008, 5:20:31 PM11/25/08
to inferno-ds
Okay so i managed to get an nds image from it that works except i also
got this error:

Nintendo DS rom tool 1.38 - May 14 2008
by Rafael Vuijk, Dave Murphy, Alexei Karpenko
/bin/sh mksymtab isds.p9 arm7/isds.p9 > isds.SYM
awk: line 19: function strtonum never defined
mk: /bin/sh mksymtab isds.p9 ... : exit status=exit(2)


On Nov 23, 1:17 am, Uriel <lost.gob...@gmail.com> wrote:
> Also note that already probably the .nds images in the inferno-ds page
> are in breach of the rules. Rather than working around the problem,
> why not fix it once and for ever? (If somebody is so emotionally
> attached to the old fonts, they can always install them manually if
> they like)
>
> uriel
>
> On Sun, Nov 23, 2008 at 2:13 AM, Uriel <urie...@gmail.com> wrote:
> > Why not simply replace the fonts with free ones as acme-sac has done
> > and as anybody packaging inferno will have to do anyway? That way this
> > will be solved once and for ever.
>
> > uriel
>

Salva Peiró

unread,
Nov 25, 2008, 5:35:32 PM11/25/08
to infer...@googlegroups.com
On Tue, Nov 25, 2008 at 11:20 PM, JohnnyForeigner
<thomas....@googlemail.com> wrote:
>
> Okay so i managed to get an nds image from it that works except i also
> got this error:
>
> Nintendo DS rom tool 1.38 - May 14 2008
> by Rafael Vuijk, Dave Murphy, Alexei Karpenko
> /bin/sh mksymtab isds.p9 arm7/isds.p9 > isds.SYM
> awk: line 19: function strtonum never defined
> mk: /bin/sh mksymtab isds.p9 ... : exit status=exit(2)
>
>

you can safely comment the i$CONF.SYM target in mkfile:55,
as the isds.SYM file is only used when debugging with no$gba.
btw i didn't know that strtonum() was gawk extension.

--
salva

Salva Peiró

unread,
Nov 25, 2008, 5:49:18 PM11/25/08
to infer...@googlegroups.com
On Tue, Nov 25, 2008 at 11:35 PM, Salva Peiró <saore...@gmail.com> wrote:
>
> you can safely comment the i$CONF.SYM target in mkfile:55,
> as the isds.SYM file is only used when debugging with no$gba.
> btw i didn't know that strtonum() was gawk extension.
>

even easier: correct mksymtab to not use strtonum().

--
salva

0001-mksymtab-replace-strtonum.patch

Salva Peiró

unread,
Nov 25, 2008, 6:09:51 PM11/25/08
to infer...@googlegroups.com
On Tue, Nov 25, 2008 at 11:49 PM, Salva Peiró <saore...@gmail.com> wrote:
>
> even easier: correct mksymtab to not use strtonum().
>
that last patch doesn't respect no$gba .SYM syntax,
so here's a version of mksymtab which works as expected.

--
salva

0001-mksymtab-replace-strtonum.patch

JohnnyForeigner

unread,
Nov 30, 2008, 2:49:44 PM11/30/08
to inferno-ds
Hello, Thanks for all your help so far.

So i compiled the sds version of the and got the "dossrv: mount /n/
local: unknown format" error as i'm using a m3 ds simply card to store
the kernel.

Do you know where i can find some information on writing a new
iom3ds.c so that i can use it. Or if the person who wrote the one for
the r4 knows where they collected their information that would be
great as i know that the dldi patch for the r4 works for the m3 i
assume there may not be much difference but i haven't been able to
find anything on this subject.

Also would someone mind clarifying the what the CONF=sds would
require. Do i still need to copy some of the inferno files over?

On Nov 25, 11:09 pm, "Salva Peiró" <saoret....@gmail.com> wrote:
> On Tue, Nov 25, 2008 at 11:49 PM, Salva Peiró <saoret....@gmail.com> wrote:
>
> > even easier: correct mksymtab to not use strtonum().
>
> that last patch doesn't respect no$gba .SYM syntax,
> so here's a version of mksymtab which works as expected.
>
> --
> salva
>
> 0001-mksymtab-replace-strtonum.patch
> 1KViewDownload

Salva Peiró

unread,
Nov 30, 2008, 5:35:10 PM11/30/08
to infer...@googlegroups.com
On Sun, Nov 30, 2008 at 8:49 PM, JohnnyForeigner
<thomas....@googlemail.com> wrote:
>
> Hello, Thanks for all your help so far.
>
> So i compiled the sds version of the and got the "dossrv: mount /n/
> local: unknown format" error as i'm using a m3 ds simply card to store
> the kernel.
>
> Do you know where i can find some information on writing a new
> iom3ds.c so that i can use it. Or if the person who wrote the one for
> the r4 knows where they collected their information that would be
> great as i know that the dldi patch for the r4 works for the m3 i
> assume there may not be much difference but i haven't been able to
> find anything on this subject.
>

The place to look for the dldi code is:
http://dldi.drunkencoders.com/index.php?title=Category:SLOT-1_devices

If the dldi patch for the r4 is working with your m3,
then you can force devdldi.c to use the functions from ior4tf.c.
Take a look devdldi.c:/^dldiinit() and the CONF=dds file.

Besides reading the code, you can also search the group messages:

- http://groups.google.com/group/inferno-ds/search?group=inferno-ds&q=mbr
- http://groups.google.com/group/inferno-ds/search?group=inferno-ds&q=FAT16
- http://groups.google.com/group/inferno-ds/search?group=inferno-ds&q=DLDI

> Also would someone mind clarifying the what the CONF=sds would
> require. Do i still need to copy some of the inferno files over?
>

See conf(10) http://www.vitanuova.com/inferno/man/10/conf.html

Besides the standalone CONF=sds there's also a CONF=dds
intended to be used for accessing the storage provided by a sd card.

--
salva

Reply all
Reply to author
Forward
0 new messages