9FRONT “THE MORE YOU PLAY WITH IT, THE HARDER IT GETS” Released
kernel and drivers:
kernel: get rid of duppage() (thanks charles)
kernel: keep cached pages continuous at the end of the page list on imagereclaim()
kernel: deprecate 9pccpuf, interpret service= boot parameter to set “cpuserver” variable
bcm kernel: add *kernelpercent option for cmdline.txt
pc64: add R8-R15 in dumpregs()
pc64: fix mmu leak
pc64: fix segattach
pc64: enable etherbcm
pc64: enable pmmc driver
pc64: add multiboot support
pc64: serial console support
pc64: amd64 kernel reboot support
audiohda: start playback only when we have a minimum delay buffered
devfs: fix cclose() crash in devfs error handling
nusb: add joy
nusb: fix loaddevstr() (thanks erik quanstro and richard miller)
etheriwl: provide shutdown function
wifi: decode AP->AP (WDS / bridge) data frames.
compilers and debuggers:
5e: fix amd64
5e: remove newline from suicide string
5e: trap unaligned memory access
8c, 6c: fix mulgen botch error for handling multiplication by zero constant
cc: correct out-of-bounds references in funct.c (thanks charles forsyth)
acid: add some debugging aid function for counting kernel image cache page refs
acid: fix errstr syscall data offset for truss library
prof: properly save and restore RARG for amd64
truss: fix syscall address formats
truss: use A instead of X as address format for data dump
programs:
fork filter procs with RFREND in various programs
aux/cpuid: amd64 support
cpu: make -p work with explicit service in dialstring (same as import)
cpu: remove unused connection directory buffer
exportfs: avoid closing netfd in filter()
exportfs: fix flush races, proc sweeping
import: make import -p work with explicit service in dialstring (thanks mischief)
inst/bootsetup: do not copy 9pccpuf kernel to 9fat
mothra: fix unicode rendering for plaintext
mothra: handle blank lines inside pre tags
mothra: remove unused local variables from pl_nextc()
pcmconv: fix dither clipping
python: add buffer length check in sock_recvfrom_into()
ramfs: replace with new lib9p based implementation
rc-httpd/handlers/serve-static: restore Content-length
xd: change -s option to switch to little-endian units
games/nes: basic audio support, battery backup
games/nes: add state saving
games/nes: add cnrom
games/nes: add surom
games/nes: add uxrom (mapper 2)
games/nes: add mapper 7
games/nes: add dmc
games/nes: add mmc3
games/nes: resize handling
games/snes: audio support (kind of)
games/snes: add state saving
games/snes: add open bus emulation
games/snes: add bg 3
games/snes: add hirom
games/snes: add mode 7
games/snes: mouse support
libraries:
libdraw: fix zero stringwidth() bug
libmach: pragma pack 32bit Ureg structs for amd64
libsec: add aes_128_cbc and aes_256_cbc ciphers
libsec: fix memory leaks in seq_decode() and octet_decode() of asn1 parser
libsec: improve thumbprint code
libsec: move static sendbuf into TlsConnection and give receive buffer a better name
libsec: skip missing thumbprint files; not an error
libsec: fix blowfish endianess confusion (thanks erik)
csdial: avoid useless werrstr() call on success (thanks mischief)
documentation:
games(1), nintendo(1): re-organize nintendo emulators into separate man page; add HISTORY
games(1): add some of the new games, not all have full description tho
nintendo(1): add SOURCE section
mp(2): spelling
nm(2): clarify that U is an undefined symbol
scribble(2): quashed false claims of quick-reference decadance.
ndb(8): document -x option of ndb/dnsquery (thanks mischief)
ndb(8): the truth is too hard to explain, so theres a nice lie.
plan9.ini(8): documented usbwait and service= boot parameter
TO BE THIS GOOD TAKES AGES…