Changes

Jump to navigation Jump to search
no edit summary
The {{Infobox channel| title = News and Forecast channels download data packages from Nintendo servers via plain http connectionChannel| image = [[File:Newschannel.png|200px]]| desc = News information| id = HAGA, HAGx| type = General channel| version = 0.7 (7)| peripherals = {{Wiimote1}} {{Internet}}| wc24 = 1}}
Some examples:The '''News Channel''' downloads data packages from Nintendo servers via plain HTTP connection. The official servers for the News Channel were discontinued on June 28, 2013; however, [[RiiConnect24]] has since restored its functionality.
http://weatherThe data files are RSA-2048-SHA1 signed, and the LZ10 compressed content begins at 0x140.wapp.wii.com/1/076/short.binhttpA Kaitai file documenting the file structure can be found [https://weather.wapp.wiigithub.com/1/076/forecast.binhttp:RiiConnect24/Kaitai-Files/news.wapp.wii.comblob/1master/076Kaitais/newsnews_file.bin.08 Nowadaysksy here], it seems the and code used by RiiConnect24 to download news file has moved: httpdata and generate files is available [https://news.wapp.wiigithub.com/v2RiiConnect24/1File-Maker/076tree/news.bin.00 ... http:master/Channels/news.wapp.wii.com/v2/1/076/news.bin.23 http://news.wapp.wii.com/ displays a Red Hat Enterprise Linux Test Page File structure: <pre>$0000 - $003F: padding (00)$0040 - $013F: rsa encrypted sha-1 signature of rest of the file$0140 - $0143: header$0144 - ....News_Channel here].: compressed data</pre> The compression is very simple:# Read one byte# For each bit of the byte, msb-to-lsb,#* if 0, copy one byte to the output#* if 1, read 16 bits msb first in v, copy n bytes at offset m from the end of the output, n=3+(v>>12), m=v & fff Quick and very dirty C code:<source lang="c"> i = 0x144; j = 0; while(i < size) { int k; int v = data[i++]; for(k=0; k<8; k++) if(!(v & (1 << (7-k)))) { result_data[j++] = data[i++]; } else { int vv = (data[i] << 8) | data[i+1]; int nb = 3+(vv >> 12); int off = (vv & 0xfff); int l; i+=2; for(l=0; l<nb; l++) { result_data[j] = result_data[j-off-1]; j++; } } }</source>[[Category:Software]][[Category:Wii channel]]
289

edits

Navigation menu