thanks @singpolyma for suggesting negative integer support in NewBase60 CASSIS lib. submitted patch had a few minor bugs: $n*-1 is slightly less optimal than 0-$n; .= is not supported in CASSIS (which must run in javascript as well as PHP), use strcat() instead; finally numtosxg() works by prepend constructing the sexagesimal return value and thus the minus sign needs to be prepended afterwards. for completeness I added negative sexagesimal support to sxgtonum() as well. updated: http://tantek.com/cassis.js