YADDA this document is out of date.
i am a recent invader to treetown. i live and work here. my hobbies and interests include: skateboarding, snowboarding, hacking, spinning drum'n'bass records (i basically like virus, no u turn, old R., and not much new stuff), techno (detroit, minimal, etc.), linguistics, languages (currently learning: french). there's currently no reason for this page to exist and you have probably stumbled upon this page by removing part of another link.
i have started taking pictures of the various graffiti around ann arbor.
it's mostly stencil graffiti, which there is relatively a lot of in this small
city. the gallery is here:
also, i have been travelling around the world. i have taken some pictures
and here are the ones i've had a chance to put up:
Los Angeles Hong Kong Manila Jakarta Singapore Kuala Lumpur
Montreal
Amsterdam
MEGAMAN
my current big unfinished project is a rewrite of the capcom
megaman engine. the goal is to have a system which can, given
proper source files and graphics, emulate the various original
megaman games for the NES. then, one can write one's own games
in the same style, because we all know one of the reasons that
series was so popular was the fun and familiar game play and
style. this will let you fulfill your personal dreams of
building your own megaman clone.
currently, the system allows you to select a few different stages
(heatman, crashman, airman, bubbleman, from megaman 2), and move
around in them, fighting a few enemies that have been implemented
and finding the boss, if he exists. you can change weapons, get
hurt, get powerups, and die. there is also multi-player networking
support. there is no sound.
Megaman vs Mario mode
speaking of games, i guess i wrote some gtk/ncurses games before..
if i can find them maybe i will post them too.
here are code-related things i have recently touched.
HIVE
hive is an extensible HIERARCHY VIEWER.
well, right now it's just an XML viewer. it uses libxml2 to parse an XML
document, then gives you a shell to browse through the "tree" and perform
operations on your "view". for example, you can hide certain subtrees
from view, or open others and recursively open each subtree's subtree to
get a complete view of it. then you can close that subtree to get a
collapsed view. think of file managers such as windows explorer. i
wrote it because i didn't have any good way to view XML in openbsd.
it has come in pretty handy when viewing large documents where manually
shaping my view takes too much time.
XML2DIR
included in the hive package is
dir2xml, a very simple tool
which takes an XML document and creates an analogous directory tree
structure. then, you can use your regular file/text processing tools
to "parse" the XML.. get it? well, here's an example:
well, here's a "screenshot":
/0/> ls
- catalog( )
+ 1/ company( ) = Now You're Cooking
+ 2/ item( )
+ 3/ item( )
/0/> open 2
/0/> list
- catalog( )
+ 1/ company( ) = Now You're Cooking
- 2/ item( )
+ 2/1/ name( ) = Microwave
+ 2/2/ price( ) = $105.00
+ 2/3/ manufacturer( ) = Hokusai, Jr.
+ 2/4/ colors( )
+ 2/5/ summary( ) = 1100-watt, 900 cu.cm. microwave oven
+ 2/6/ description( ) = This 1100-watt microwave with its capacity of 900 cubic
centimeters is ideal for personal use. The rotating plate makes sure you
r food is cooked evenly. Dinner is served!
+ 3/ item( )
/0/> cd 2
/0/2/> open *
/0/2/> list
- item( )
- 1/ name( ) = Microwave
- 2/ price( ) = $105.00
- 3/ manufacturer( ) = Hokusai, Jr.
- 4/ colors( )
+ 4/1/ color( sku="HM-204G" hex="#cccccc" ) = Gray
+ 4/2/ color( sku="HM-205M" hex="#993333" ) = Maroon
- 5/ summary( ) = 1100-watt, 900 cu.cm. microwave oven
- 6/ description( ) = This 1100-watt microwave with its capacity of 900 cubic
centimeters is ideal for personal use. The rotating plate makes sure your
food is cooked evenly. Dinner is served!
/0/2/>
<me name="tomo"> <mom name="hiroko">plays violin</mom> <dad name="ba">grows bonsai</dad> <sis name="yumi">studies japanese</sis> </me> |
$ xml2dir tomo.xml $ cd tomo $ ls dad mom sis $ ls -a mom .text name $ cat mom/.text plays violin $ cat dad/name ba |
TUXNES tuxnes, a NES emulator, will work on openbsd if properly coerced. first of all, you will need libgnugetopt, which isn't yet an openbsd port, so download libgnugetopt-1.1.tar.gz and make, and manually install it (might not be able to trust it). actually, getopt_long, which is what we need libgnugetopt for, is going to go into a standard openbsd library soon and this won't be necessary. then download tuxnes-0.75-openbsd which is tuxnes-0.75 with some changes i made to make it build (2.9/i386). it's a bit too hacked together to become a port yet, but it should build and be playable. sounds doesn't quite seem to work as the mu-8 format which it says it supports, isn't quite working (this is supposedly now going to be worked on, but hey, if you've got time..)
PORTS2HTML
ports2html turns the OpenBSD ports tree into a web
browseable web page. example
download
$Id: index.html,v 1.2 2003/12/22 04:58:20 tomo Exp $