5.00 score from hupso.pl for:
pagetable.com



HTML Content


Titlepagetable.com | some assembly required

Length: 38, Words: 5
Description pusty

Length: 0, Words: 0
Keywords pusty
Robots
Charset UTF-8
Og Meta - Title exist
Og Meta - Description exist
Og Meta - Site name exist
Tytuł powinien zawierać pomiędzy 10 a 70 znaków (ze spacjami), a mniej niż 12 słów w długości.
Meta opis powinien zawierać pomiędzy 50 a 160 znaków (łącznie ze spacjami), a mniej niż 24 słów w długości.
Kodowanie znaków powinny być określone , UTF-8 jest chyba najlepszy zestaw znaków, aby przejść z powodu UTF-8 jest bardziej międzynarodowy kodowaniem.
Otwarte obiekty wykresu powinny być obecne w stronie internetowej (więcej informacji na temat protokołu OpenGraph: http://ogp.me/)

SEO Content

Words/Characters 5943
Text/HTML 60.32 %
Headings H1 11
H2 18
H3 7
H4 0
H5 0
H6 0
H1
pagetable.com
announcement: “the ultimate game boy talk” at 33c3
reverse-engineered geos 2.0 for c64 source code
copy protection traps in geos for c64
how amica paint protected tampering with its credits
why does petscii have upper case and lower case reversed?
macross 6502, an assembler for people who hate assembly language
xhyve – lightweight virtualization on os x based on bhyve
reconstructing some source of microsoft basic for 8080
making obsolete code run again: the mxass 6502 cross assembler
emulating the intel 8080 on a mos 6502
H2
some assembly required
geos copy protection
serial numbers for protection
serial numbers in practice
a potential generic hack
trap 1: preventing changing the vector
trap 2: preventing changing the implementation
summary
some history
compiling macross
writing code
macros
full documentation
future
running tiny core linux on xhyve
running ubuntu on xhyve
next steps
apple-80
H3
menu
post navigation
recent posts
github
blogroll
categories
meta
H4
H5
H6
strong
b
i
em
Bolds strong 0
b 0
i 0
em 0
Zawartość strony internetowej powinno zawierać więcej niż 250 słów, z stopa tekst / kod jest wyższy niż 20%.
Pozycji używać znaczników (h1, h2, h3, ...), aby określić temat sekcji lub ustępów na stronie, ale zwykle, użyj mniej niż 6 dla każdego tagu pozycje zachować swoją stronę zwięzły.
Styl używać silnych i kursywy znaczniki podkreślić swoje słowa kluczowe swojej stronie, ale nie nadużywać (mniej niż 16 silnych tagi i 16 znaczników kursywy)

Statystyki strony

twitter:title pusty
twitter:description pusty
google+ itemprop=name pusty
Pliki zewnętrzne 7
Pliki CSS 3
Pliki javascript 4
Plik należy zmniejszyć całkowite odwołanie plików (CSS + JavaScript) do 7-8 maksymalnie.

Linki wewnętrzne i zewnętrzne

Linki 147
Linki wewnętrzne 7
Linki zewnętrzne 140
Linki bez atrybutu Title 80
Linki z atrybutem NOFOLLOW 0
Linki - Użyj atrybutu tytuł dla każdego łącza. Nofollow link jest link, który nie pozwala wyszukiwarkom boty zrealizują są odnośniki no follow. Należy zwracać uwagę na ich użytkowania

Linki wewnętrzne

skip to content #content
- docs/xhyve_vnc.png
- docs/basic8080a.jpg
- docs/basic8080b.jpg
- docs/8080sim/8080sim.jpg
-
dann mccreary: 8080 simulation with a 6502 [1979]
docs/8080sim/8080 simulation with a 6502.pdf
-
dann mccreary: an 8080 simulator for the 6502, kim-1 version [1978]
docs/8080sim/an 8080 simulator for the 6502, kim-1 version.pdf

Linki zewnętrzne

pagetable.com http://www.pagetable.com/
home http://www.pagetable.com/
about http://www.pagetable.com/?page_id=5
announcement: “the ultimate game boy talk” at 33c3 http://www.pagetable.com/?p=871
leave a reply http://www.pagetable.com/?p=871#respond
https://halfnarp.events.ccc.de/ https://halfnarp.events.ccc.de/
the ultimate commodore 64 talk https://www.youtube.com/watch?v=zsrrcnque2e
atari 2600 https://www.youtube.com/watch?v=anyebnxv9r8
galaksija https://www.youtube.com/watch?v=diwc9vdqfqw
amiga 500 https://www.youtube.com/watch?v=bbvavdbzxfk
archeology http://www.pagetable.com/?cat=3
http://www.pagetable.com/?p=871
michael steil http://www.pagetable.com/?author=1
reverse-engineered geos 2.0 for c64 source code http://www.pagetable.com/?p=869
3 replies http://www.pagetable.com/?p=869#comments
geos https://en.wikipedia.org/wiki/geos_(8-bit_operating_system)
maciej witkowiak https://github.com/ytmytm
work https://github.com/ytmytm/c64-geos2000
cc65 compiler suite https://github.com/cc65/cc65
https://github.com/mist64/geos https://github.com/mist64/geos
copy protection/trap mechanisms http://www.pagetable.com/?p=865
6502 http://www.pagetable.com/?cat=2
archeology http://www.pagetable.com/?cat=3
http://www.pagetable.com/?p=869
michael steil http://www.pagetable.com/?author=1
copy protection traps in geos for c64 http://www.pagetable.com/?p=865
5 replies http://www.pagetable.com/?p=865#comments
complex copy protection scheme http://www.root.org/%7enate/c64/krackerjax/pg106.htm
6502 http://www.pagetable.com/?cat=2
archeology http://www.pagetable.com/?cat=3
hacks http://www.pagetable.com/?cat=6
security http://www.pagetable.com/?cat=10
http://www.pagetable.com/?p=865
michael steil http://www.pagetable.com/?author=1
how amica paint protected tampering with its credits http://www.pagetable.com/?p=860
1 reply http://www.pagetable.com/?p=860#comments
6502 http://www.pagetable.com/?cat=2
archeology http://www.pagetable.com/?cat=3
http://www.pagetable.com/?p=860
michael steil http://www.pagetable.com/?author=1
why does petscii have upper case and lower case reversed? http://www.pagetable.com/?p=857
1 reply http://www.pagetable.com/?p=857#comments
uncategorized http://www.pagetable.com/?cat=1
http://www.pagetable.com/?p=857
michael steil http://www.pagetable.com/?author=1
macross 6502, an assembler for people who hate assembly language http://www.pagetable.com/?p=848
7 replies http://www.pagetable.com/?p=848#comments
https://github.com/museum-of-art-and-digital-entertainment/macross https://github.com/museum-of-art-and-digital-entertainment/macross
habitat https://en.wikipedia.org/wiki/habitat_(video_game)
quantum link https://en.wikipedia.org/wiki/quantum_link
chip morningstar https://en.wikipedia.org/wiki/chip_morningstar
* http://www.pagetable.com/?p=848#comment-205812
the museum of art and digital entertainment http://themade.org/
official repository https://github.com/museum-of-art-and-digital-entertainment/macross
doc/macros.itr https://github.com/museum-of-art-and-digital-entertainment/macross/blob/master/doc/macros.itr
doc/genmacros.itr https://github.com/museum-of-art-and-digital-entertainment/macross/blob/master/doc/genmacros.itr
doc/writeup_6502.itr https://github.com/museum-of-art-and-digital-entertainment/macross/blob/master/doc/writeup_6502.itr
6502 http://www.pagetable.com/?cat=2
archeology http://www.pagetable.com/?cat=3
http://www.pagetable.com/?p=848
michael steil http://www.pagetable.com/?author=1
xhyve – lightweight virtualization on os x based on bhyve http://www.pagetable.com/?p=831
32 replies http://www.pagetable.com/?p=831#comments
hypervisor.framework https://developer.apple.com/library/mac/releasenotes/macosx/whatsnewinosx/articles/macosx10_10.html
virtualization http://www.pagetable.com/?p=348
hvdos http://www.pagetable.com/?p=764
xhyve https://github.com/mist64/xhyve
bhyve http://bhyve.org
tiny core linux http://tinycorelinux.net
ubuntu server http://www.ubuntu.com/download/server
skerit’s ubuntu vnc tutorial http://skerit.com/en/computer/english-vnc-x11-session-on-ubuntu-12-04-server-without-monitor-or-graphics-card/
uncategorized http://www.pagetable.com/?cat=1
http://www.pagetable.com/?p=831
michael steil http://www.pagetable.com/?author=1
reconstructing some source of microsoft basic for 8080 http://www.pagetable.com/?p=827
3 replies http://www.pagetable.com/?p=827#comments
digitally in source form http://www.pagetable.com/?p=774
in the archives of harvard university http://www.worldcat.org/title/basic-mcs-8080-1975/oclc/77065001
took notes http://altairbasic.org/other%20versions/ian.htm
in harry lewis’s blog post http://harry-lewis.blogspot.com/2011/03/who-wrote-how-much-of-original.html
collection of photos https://www.facebook.com/dmalan/media_set?set=a.10101264772407751.1073741874.6454
computer history museum http://www.computerhistory.org
microsoft office lens https://www.google.com/search?q=office+lens
archeology http://www.pagetable.com/?cat=3
http://www.pagetable.com/?p=827
michael steil http://www.pagetable.com/?author=1
making obsolete code run again: the mxass 6502 cross assembler http://www.pagetable.com/?p=739
6 replies http://www.pagetable.com/?p=739#comments
powerbasic http://en.wikipedia.org/wiki/powerbasic
turbo pascal http://en.wikipedia.org/wiki/turbo_pascal
github.com/mist64/mxass https://github.com/mist64/mxass
64′er http://de.wikipedia.org/wiki/64’er
hypra-ass http://csdb.dk/release/?id=111993
giga-ass http://csdb.dk/release/?id=36606
vis-ass http://csdb.dk/release/?id=121409
assblaster http://csdb.dk/release/?id=99889
f8-assblaster http://csdb.dk/release/?id=126584
cc65 http://www.cc65.org
6502 http://www.pagetable.com/?cat=2
archeology http://www.pagetable.com/?cat=3
http://www.pagetable.com/?p=739
michael steil http://www.pagetable.com/?author=1
emulating the intel 8080 on a mos 6502 http://www.pagetable.com/?p=824
13 replies http://www.pagetable.com/?p=824#comments
very http://vice-emu.sourceforge.net
common http://mamedev.org
nowadays http://en.wikipedia.org/wiki/rosetta_(software)
brutaldeluxe.fr http://www.brutaldeluxe.fr/projects/cassettes/sybex/
6502 http://www.pagetable.com/?cat=2
archeology http://www.pagetable.com/?cat=3
http://www.pagetable.com/?p=824
michael steil http://www.pagetable.com/?author=1
older posts http://www.pagetable.com/?paged=2
announcement: “the ultimate game boy talk” at 33c3 http://www.pagetable.com/?p=871
reverse-engineered geos 2.0 for c64 source code http://www.pagetable.com/?p=869
copy protection traps in geos for c64 http://www.pagetable.com/?p=865
how amica paint protected tampering with its credits http://www.pagetable.com/?p=860
why does petscii have upper case and lower case reversed? http://www.pagetable.com/?p=857
debugmode http://debugmo.de
alex ionescu’s blog http://www.alex-ionescu.com
fun with virtualization http://virtuallyfun.superglobalmegacorp.com
os/2 museum http://www.os2museum.com/wp/
6502 http://www.pagetable.com/?cat=2
archeology http://www.pagetable.com/?cat=3
default http://www.pagetable.com/?cat=4
digital video http://www.pagetable.com/?cat=5
hacks http://www.pagetable.com/?cat=6
literature http://www.pagetable.com/?cat=7
puzzle http://www.pagetable.com/?cat=8
scumm http://www.pagetable.com/?cat=9
security http://www.pagetable.com/?cat=10
tricks http://www.pagetable.com/?cat=11
trivia http://www.pagetable.com/?cat=12
uncategorized http://www.pagetable.com/?cat=1
whines http://www.pagetable.com/?cat=13
log in http://www.pagetable.com/wp-login.php
entries rss http://www.pagetable.com/?feed=rss2
comments rss http://www.pagetable.com/?feed=comments-rss2
wordpress.org http://wordpress.org/
proudly powered by wordpress http://wordpress.org/

Zdjęcia

Zdjęcia 12
Zdjęcia bez atrybutu ALT 7
Zdjęcia bez atrybutu TITLE 12
Korzystanie Obraz ALT i TITLE atrybutu dla każdego obrazu.

Zdjęcia bez atrybutu TITLE

/docs/amica_paint.png
docs/xhyve_logo.png
docs/xhyve_vnc.png
docs/basic8080a.jpg
docs/basic8080b.jpg
docs/8080sim/8080sim_t.jpg
docs/8080sim/8080 simulation with a 6502.png
docs/8080sim/an 8080 simulator for the 6502, kim-1 version.png
http://www.pagetable.com/wp-includes/images/smilies/icon_wink.gif
http://www.pagetable.com/wp-includes/images/smilies/icon_wink.gif
http://www.pagetable.com/wp-includes/images/smilies/icon_wink.gif
http://www.pagetable.com/wp-includes/images/smilies/icon_smile.gif

Zdjęcia bez atrybutu ALT

docs/xhyve_logo.png
docs/xhyve_vnc.png
docs/basic8080a.jpg
docs/basic8080b.jpg
docs/8080sim/8080sim_t.jpg
docs/8080sim/8080 simulation with a 6502.png
docs/8080sim/an 8080 simulator for the 6502, kim-1 version.png

Ranking:


Alexa Traffic
Daily Global Rank Trend
Daily Reach (Percent)









Majestic SEO











Text on page:

pagetable.com some assembly required menu skip to content homeabout announcement: “the ultimate game boy talk” at 33c3 leave a reply i will present “the ultimate game boy talk” at the 33rd chaos communication congress in hamburg later in december. if you are interested in attending the talk, please go to https://halfnarp.events.ccc.de/, select it and press submit, so the organizers can reserve a big enough room. the talk continues the spirit of the ultimate commodore 64 talk, which i presented at the same conference eight years ago, as well as several other talks in the series done by others: atari 2600 (svolli), galaksija (tomaž šolc), amiga 500 (rahra). here’s the abstract: the 8-bit game boy was sold between 1989 and 2003, but its architecture more closely resembles machines from the early 1980s, like the commodore 64 or the nes. this talk attempts to communicate “everything about the game boy” to the listener, including its internals and quirks, as well as the tricks that have been used by games and modern demos, reviving once more the spirit of times when programmers counted clock cycles and hardware limitations were seen as a challenge. this entry was posted in archeology on december 7, 2016 by michael steil. reverse-engineered geos 2.0 for c64 source code 3 replies the geos operating system managed to clone the macintosh gui on the commodore 64, a computer with an 8 bit cpu and 64 kb of ram. based on maciej witkowiak's work, i created a reverse-engineered source version of the c64 geos 2.0 kernal for the cc65 compiler suite: https://github.com/mist64/geos the source compiles into the exact same binary as shipped with geos 2.0. the source is well-structured and split up into 31 source files. machine-specific code is marked up. copy protection/trap mechanisms can be disabled. the build system makes sure binary layout requirements are met. this makes the source a great starting point for adding (optional) optimized code paths or features integrating existing patches from various sources integrating versions for other computers porting it to different 6502-based computers just fork the project and send pull requests! this entry was posted in 6502, archeology on august 19, 2016 by michael steil. copy protection traps in geos for c64 5 replies major geos applications on the commodore 64 protect themselves from unauthorized duplication by keying themselves to the operating system's serial number. to avoid tampering with this mechanism, the system contains some elaborate traps, which will be discussed in this article. geos copy protection the geos boot disk protects itself with a complex copy protection scheme, which uses code uploaded to the disk drive to verify the authenticity of the boot disk. berkeley softworks, the creators of geos, found it necessary to also protect their applications like geocalc and geopublish from unauthorized duplication. since these applications were running inside the geos "kernal" environment, which abstracted most hardware details away, these applications could not use the same kind of low-level tricks that the system was using to protect itself. serial numbers for protection the solution was to use serial numbers. on the very first boot, the geos system created a 16 bit random number, the "serial number", and stored it in the kernal binary. (since the system came with a "backup" boot disk, the system asked for that disk to be inserted, and stored the same serial in the backup's kernal.) now whenever an application was run for the first time, it read the system's serial number and stored it in the application's binary. on subsequent runs, it read the system's serial number and compared it with the stored version. if the serial numbers didn't match, the application knew it was running on a different geos system than the first time – presumably as a copy on someone else's system: since the boot disk could not be copied, two different people had to buy their own copies of geos, and different copies of geos had different serial numbers. serial numbers in practice the code to verify the serial number usually looked something like this: .,d5ef 20 d8 c1 jsr $c1d8 ; getserialnumber .,d5f2 a5 03 lda $03 ; read the hi byte .,d5f4 cd 2f d8 cmp $d82f ; compare with stored version .,d5f7 f0 03 beq $d5fc ; branch if equal .,d5f9 ee 18 c2 inc $c218 ; sabotage lddeskacc syscall: increment vector .,d5fc a0 00 ldy #$00 ; ... if the highest 8 bits of the serial don't match the value stored in the application's binary, it increments the pointer of the lddeskacc vector. this code was taken from the "desktop" file manager, which uses this subtle sabotage to make loading a "desk accessory" (a small helper program that can be run from within an application) unstable. every time desktop gets loaded, the pointer gets incremented, and while lddeskacc might still work by coincidence the first few times (because it only skips a few instructions), it will break eventually. other applications used different checks and sabotaged the system in different ways, but they all had in common that they called getserialnumber. (desktop came with every geos system and didn't need any extra copy protection, but it checked the serial anyway to prevent users from permanantly changing their geos serial to match one specific pirated application.) a potential generic hack the downside of this scheme is that all applications are protected the same way, and a single hack could potentially circumvent the protection of all applications. a generic hack would change the system's getserialnumber implementation to return exactly the serial number expected by the application by reading the saved value from the application's binary. the address where the saved valus is stored is different for every application, so the hack could either analyze the instructions after the getserialnumber call to detect the address, or come with a small table that knows these addresses for all major applications. geos supports auto-execute applications (file type $0e) that will be executed right after boot – this would be the perfect way to make this hack available at startup without patching the (encrypted) system files. trap 1: preventing changing the vector such a hack would change the getserialnumber vector in the system call jump table to point to new code in some previously unused memory. but the geos kernal has some code to counter this: ; (y = $ff from the code before) .,ee59 b9 98 c0 lda $c098,y ; read lo byte of getserialnumber vector .,ee5c 18 clc .,ee5d 69 5a adc #$5a ; add $5a .,ee5f 99 38 c0 sta $c038,y ; overwrite low byte graphicsstring vector in the middle of code that deals with the menu bar and menus, it uses this obfuscated code to sabotage the graphicsstring system call if the getserialnumber vector was changed. if the getserialnumber vector is unchanged, these instructions are effectively a no-op: the lo byte of the system's getserialnumber vector ($f3) plus $5a equals the lo byte of the graphicsstring vector ($4d). but if the getserialnumber vector was changed, then graphicsstring will point to a random location and probably crash. berkely softworks was cross-developing geos on unix machines with a toolchain that supported complex expressions, so they probably used code like this to express this: ; y = $ff lda getserialnumber + 1 - $ff,y clc adc #<(_graphicsstring - _getserialnumber) sta graphicsstring + 1 - $ff,y in fact, different variations of geos (like the georam version) were separate builds with different build time arguments, so because of different memory layouts, they were using different adc values here. note that the pointers to the getserialnumber and graphicsstring have been obfuscated, so that an attacker that has detected the trashed graphicsstring vector won't be able to find the sabotage code by looking for the address. trap 2: preventing changing the implementation if the hack can't change the getserialnumber vector, it could put a jmp instruction at the beginning of the implementation to the new code. but the geos kernal counters this as well. the getserialnumber implementation looks like this: .,cff3 ad a7 9e lda $9ea7 ; load lo byte of serial .,cff6 85 02 sta $02 ; into return value (lo) .,cff8 ad a8 9e lda $9ea8 ; load hi byte of serial .,cffb 85 03 sta $03 ; into return value (hi) .,cffd 60 rts ; return at the end of the system call function usesystemfont, it does this: .,e6c9 ad 2f d8 lda $d82f ; read copy of hi byte of serial .,e6cc d0 06 bne $e6d4 ; non-zero? done this before already .,e6ce 20 f8 cf jsr $cff8 ; call second half of getserialnumber .,e6d1 8d 2f d8 sta $d82f ; and store the hi byte in our copy .,e6d4 60 rts ; ... and in the middle of the system call function findftypes, it does this: .,d5eb a2 c1 ldx #$c1 .,d5ed a9 96 lda #$96 ; public getserialnumber vector ($c196) .,d5ef 20 d8 c1 jsr $c1d8 ; "callroutine": call indirectly (obfuscation) .,d5f2 a5 03 lda $03 ; read hi byte of serial .,d5f4 cd 2f d8 cmp $d82f ; compare with copy .,d5f7 f0 03 beq $d5fc ; if identical, skip next instruction .,d5f9 ee 18 c2 inc $c218 ; sabotage lddeskacc by incrementing its vector .,d5fc a0 00 ldy #$00 ; ... so usesystemfont makes a copy of the hi byte of the serial, and findftypes compares the copy with the serial – so what's the protection? the trick is that one path goes through the proper getserialnumber vector, while the other one calls into the bottom half of the original implementation. if the hack overwrites the first instruction of the implementation (or managed to disable the first trap and changed the system call vector directly), calling though the vector will reach the hack, while calling into the middle of the original implementation will still reach the original code. if the hack returns a different value than the original code, this will sabotage the system in a subtle way, by incrementing the lddeskacc system call vector. note that this code calls a kernal system function that will call getserialnumber indirectly, so the function pointer is split into two 8 bit loads and can't be found by just searching for the constant. since the code in usesystemfont doesn't call getserialnumber either, an attacker won't find a call to that function anywhere inside kernal. summary i don't know whether anyone has ever created a generic serial number hack for geos, but it would have been a major effort – in a time before emulators allowed for memory watch points. an attacker would have needed to suspect the memory corruption, compared memory dumps before and after, and then found the two places that change code. the lddeskacc sabotage would have been easy to find, because it encodes the address as a constant, but the graphicsstring sabotage would have been nearly impossible to find, because the trap neither uses the verbatim graphicsstring address nor getserialnumber function. usual effective hacks were much more low-tech and instead "un-keyed" applications, i.e. removed the cached serial number from their binaries to revert them into their original, out-of-the-box state. this entry was posted in 6502, archeology, hacks, security on august 9, 2016 by michael steil. how amica paint protected tampering with its credits 1 reply in mid-1990, the floppy disk of special issue 55 of the german commodore 64 magazine "64'er" contained the "amica paint" graphics program – which was broken beyond usefulness. i'll describe what went wrong. "amica paint" was devloped by oliver stiller and first published in 64'er special issue 27 in 1988, as a type-in program that filled 25 pages of the magazine. two years later, amica paint was published again in special issue 55, which this time came with a floppy disk. but this version was completely broken: just drawing a simple line would cause severe glitches. 64'er issue 9/1990 published an erratum to fix amica paint, which described three ways (basic script, asm monitor and disk monitor) to patch 7 bytes in one of the executable files: --- a/a.paint c000.txt +++ b/a.paint c000.txt @@ -67,8 +67,8 @@ 00000420 a5 19 85 ef a5 1a 85 f0 4c 29 c4 20 11 c8 20 6c |........l). .. l| 00000430 c8 08 20 ed c7 28 90 f6 60 01 38 00 20 20 41 4d |.. ..(..`.8. am| 00000440 49 43 41 20 50 41 49 4e 54 20 56 31 2e 34 20 20 |ica paint v1.4 | -00000450 01 38 03 20 20 20 4f 2e 53 54 49 4c 4c 45 52 20 |.8. o.stiller | -00000460 31 39 39 30 20 20 20 01 31 00 58 3d 30 30 30 20 |1990 .1.x=000 | +00000450 01 38 03 42 59 20 4f 2e 53 54 49 4c 4c 45 52 20 |.8.by o.stiller | +00000460 31 39 38 36 2f 38 37 01 31 00 58 3d 30 30 30 20 |1986/87.1.x=000 | 00000470 59 3d 30 30 30 20 20 20 20 20 20 20 20 20 00 01 |y=000 ..| 00000480 31 00 42 49 54 54 45 20 57 41 52 54 45 4e 20 2e |1.bitte warten .| 00000490 2e 2e 20 20 20 20 00 64 0a 01 00 53 43 48 57 41 |.. .d...schwa| this changes the credits message from "o.stiller 1990" to "by o.stiller 1986/87" – which is the original message from the previous publication. 64'er magazine had published the exact same application without any updates, but binary patched the credits message from "1986/87" to "1990", and unfortunately for them, amica paint contained code to detect exactly this kind of tampering: .,c5f5 a0 14 ldy #$14 ; check 20 bytes .,c5f7 a9 00 lda #$00 ; init checksum with 0 .,c5f9 18 clc .,c5fa 88 dey .,c5fb 79 51 c4 adc $c451,y ; add character from message .,c5fe 88 dey .,c5ff 18 clc .,c600 10 f9 bpl $c5fb ; loop .,c602 ee fd c5 inc $c5fd .,c605 c9 ed cmp #$ed ; checksum should be $ed .,c607 f0 05 beq $c60e .,c609 a9 a9 lda #$a9 .,c60b 8d e4 c7 sta $c7e4 ; otherwise sabotage line drawing .,c60e 60 rts the code checksums the message "by o.stiller 1986/87". if the checksum does not match, the code will overwrite an instruction in the following code: .,c7dc 65 ec adc $ec .,c7de 85 ec sta $ec .,c7e0 90 02 bcc $c7e4 .,c7e2 e6 ed inc $ed .,c7e4 a4 dd ldy $dd .,c7e6 60 rts the "ldy $dd" instruction at $c7e4 will be overwritten with "lda #$dd", which will cause the glitches in line drawing. the proper fix would have been to change the comparison with $ed into a comparison with $4f, the checksum of the updated message – a single byte fix. but instead of properly debugging the issue, 64'er magazine published a patch to restore the original message, practically admitting that they had cheated by implying the re-release was not the exact same software. this entry was posted in 6502, archeology on august 6, 2016 by michael steil. why does petscii have upper case and lower case reversed? 1 reply the petscii character encoding that is used on the commodore 64 (and all other commodore 8 bit computers) is similar to ascii, but different: uppercase and lowercase are swapped! why is this? the "pet 2001" from 1977 had a built-in character set of 128 characters. this would have been enough for the 96 printable ascii characters, and an extra 32 graphical characters. but commodore decided to replace the 26 lowercase characters with even more graphical characters. after all, the pet did not support a bitmapped display, so the only way to display graphics was using the graphical characters built into the character set. these consisted of symbols useful for box drawing as well as miscellaneous symbols (including the french deck suits). so the first pet was basically using ascii, but with missing lower case. this had an influence on the character codes produced by the keyboard: key ascii keyboard pet keyboard a a ($61) a ($41) shift + a a ($41) ♠ ($c1) on a standard ascii system, pressing "a" unshifted produces a lower case "a", and together with shift, it produces an uppercase "a". on a pet, because there is no lower case, pressing "a" unshifted produces an uppercase "a", and together with shift produces the "spade" symbol ("♠") from the pet-specific graphical characters. later commodore 8 bit computers added a second character set that supported uppercase and lowercase. commodore decided to allow the user to switch between the two character sets at any time (by pressing the "commodore" and "shift" keys together), so applications generally didn't know which character set was active. therefore, the keyboard had to produce the same character code independent of the current character set: key ascii keyboard pet keyboard (upper/graph) pet keyboard (upper/lower) a a ($61) a ($41) a ($41) shift + a a ($41) ♠ ($c1) a ($c1) an unshifted "a" still produces a code of $41, but it has to be displayed as a lower case "a" if the upper/lower character set is enabled, so commodore had to put lower case characters at the $40-$5f area – which in ascii are occupied by the uppercase characters. a shifted "a" still produces a code of $c1, so commodore put the uppercase characters into the $c0-$df area. now that both upper case and lower case were supported, commodore decided to map the previously undefined $60-$7f area to upper case as well: range ascii upper case petscii lower case petscii lower case petscii with fallback $40-$5f upper case upper case lower case lower case $60-$7f lower case undefined undefined upper case $c0-$df undefined graphical upper case upper case if you only look at the area between $00 and $7f, you can see that petscii reverses upper and lower case compared to ascii, but the $60-$7f area is only a compatibility fallback; upper case is actually in the $c0-$df area – it's what the keyboard driver produces. this entry was posted in uncategorized on july 17, 2016 by michael steil. macross 6502, an assembler for people who hate assembly language 7 replies there are many mos 6502 cross-assemblers available. here’s a new one. or actually a very old one. “macross”, a very powerful 6502 macro assembler, which was used to create habitat, maniac mansion and zak mckracken, was developed between 1984 and 1987 at lucasfilm ltd. and is now open source (mit license): https://github.com/museum-of-art-and-digital-entertainment/macross some history starting in 1984, a team at lucasfilm ltd. was developing one of the first online role-playing games, originally called “microcosm”, which was released as “habitat” in 1986 and later renamed to “club caribe”. the client ran on a commodore 64, which conntected to the central server through the quantum link network. the client software was developed on a 68k-based sun workstation running the sunos variant of unix using cross-development tools developed by chip morningstar (who was also the habitat lead): the “macross” assembler and the “slinky” linker. they were used on every 6502 (atari 400/800, commodore 64, and apple ii) game produced at lucasfilm games, from 1984 up until those machines ceased to be relevant to the games market*. in 2014, the museum of art and digital entertainment got a hold of the source of the original development tools (macross/slinky) the source of the c64 client the source of the server (written in pl/i) lots of documentation and development logs which originated from an archive created in 1987 in the context of the technology transfer to fujitsu, which bought all habitat assets. since macross and slinky were written for unix, it was easy to get them compiling with modern compilers (k&r syntax notwithstanding) and running on a modern unix system. at the time of writing, the code in the official repository has been fixed to compile with clang on os x. further fixes and cleanups are very welcome. compiling macross enter “make” both in the toplevel directory and in the “slinky” directory, then copy “macross” and “slinky” into your path. there are man files in the “doc” directory that you may want to install as well. writing code the syntax of macross source files is very different from modern 6502 cross assembler, and more similar to commodore’s own “a65″ assembler. here is a small “hello world” for the c64: define strout = 0xab1e hello: lda #/text ldy #?text jmp strout text: byte "hello world!", 0 as you can see, hex values have to be specified in c notation (binary is prefixed with “0b”), and the operators to extract the low and high bytes of a 16 bit value are “/” and “?”, respectively. compile and link the source file like this: macross -c -o hello.o hello.m slinky -e -o hello.bin -n -m hello.sym -l 0xc000 hello.o dd if=hello.bin bs=1 skip=2 count=2 of=hello.prg dd if=hello.bin bs=1 skip=6 >> hello.prg the “dd” lines convert slinky’s output, which is a “standard a65-style object file” (which has a header of ff ff, followed by the start address, followed by the end address) into a c64 .prg file that is only prefixed by the start address. here is a slightly more complex example: define bsout = 0xffd2 hello: ldx #0 do { lda x[text] cmp #'a' if (geq) { tay iny tya } inx jsr bsout } while (!zero) rts text: byte "hello world!", 0 macross supports c-style if/else, while and do/while, as well as do/until, where the condition can be one of: zero/equal carry lt/leq/gt/geq slt/sleq/sgt/sgeq positive/plus/negative/minus overflow …as well as their negated versions. also note that the “absolute, x-indexed” addressing mode has a different syntax than commonly used. macros macross has a very powerfull macro language. here is an example: org 0xc000 function makefirstbyte(operand) { mif (isimmediatemode(operand)) { freturn(/operand) } melse { freturn(operand) } } function makesecondbyte(operand) { mif (isimmediatemode(operand)) { freturn(?operand) } melse { freturn(operand + 1) } } macro movew src, dst { lda makefirstbyte(src) sta makefirstbyte(dst) lda makesecondbyte(src) sta makesecondbyte(dst) } macro hook_vector index, new, dst { ldx #index * 2 movew x[0x0300], dst movew #new, x[0x0300] } define vector_index_irq = 10 hook_vector vector_index_irq, irq, return + 1 rts irq: inc 0xd020 return: jmp 0xffff the “hook_vector” line will emit the following assembly code: ldx #$14 lda $0300,x sta $c01d lda $0301,x sta $c01e lda #$19 sta $0300,x lda #$c0 sta $0301,x (the example is a little contrived, since adding the index could have been done at assembly time, but the example nicely demonstrates that macros can preserve addressing modes.) the file doc/macros.itr contains many useful macros. they are documented in doc/genmacros.itr. full documentation the complete documentation of macross is available in the file doc/writeup_6502.itr in the repository. it is in troff format and can viewed like this: nroff -ms doc/writeup_6502.itr future macross is a very different approach to 6502 development, and with the source available, i think it’s a viable project that should be continued. i will happily accept pull requests for compile fixes (gcc, vs, …), cleanups (c99, converting docs from troff to markdown, …) and features (bin and prg output, support for more a modern notation, petscii, …). this entry was posted in 6502, archeology on january 22, 2016 by michael steil. xhyve – lightweight virtualization on os x based on bhyve 32 replies the hypervisor.framework user mode virtualization api introduced in mac os x 10.10 (yosemite) cannot only be used for toy projects like the hvdos dos emulator, but is full-featured enough to support a full virtualization solution that can for example run linux. xhyve is a lightweight virtualization solution for os x that is capable of running linux. it is a port of freebsd’s bhyve, a kvm+qemu alternative written by peter grehan and neel natu. super lightweight, only 230 kb in size completely standalone, no dependencies the only bsd-licensed virtualizer on os x does not require a kernel extension (bhyve’s kernel code was ported to user mode code calling into hypervisor.framework) multi-cpu support networking support can run off-the-shelf linux distributions (and could be extended to run other operating systems) xhyve may make a good solution for running docker on your mac, for instance. running tiny core linux on xhyve the xhyve repository already contains a small linux system for testing, so you can try out xhyve by just typing these few lines: $ git clone https://github.com/mist64/xhyve $ cd xhyve $ make $ ./xhyverun.sh and you will see tiny core linux booting in your terminal window: initializing cgroup subsys cpuset initializing cgroup subsys cpu initializing cgroup subsys cpuacct linux version 3.16.6-tinycore64 (tc@box) (gcc version 4.9.1 (gcc) ) #777 smp thu oct 16 10:21:00 utc 2014 command line: earlyprintk=serial console=ttys0 acpi=off e820: bios-provided physical ram map: bios-e820: [mem 0x0000000000000000-0x000000000009fbff] usable bios-e820: [mem 0x0000000000100000-0x000000003fffffff] usable nx (execute disable) protection: active smbios 2.6 present. agp: no agp bridge found e820: last_pfn = 0x40000 max_arch_pfn = 0x400000000 x86 pat enabled: cpu 0, old 0x7040600070406, new 0x7010600070106 cpu mtrrs all blank - virtualized system. [...] (?- //\ core is distributed with absolutely no warranty. v_/_ www.tinycorelinux.com tc@box:~$ to shut down the vm and exit to the mac’s command line, enter: $ sudo halt running ubuntu on xhyve you can also install a more complete linux distribution on xhyve. the tricky bit is that xhyve doesn’t come with a bios or efi booter, so it is necessary to extract the kernel and initrd from the linux image and pass them to xhyve manually. first download ubuntu server (the desktop version doesn’t support the text mode installer) into the directory “ubuntu” inside the “xhyve” directory: $ ls -l total 1218560 -rw-r--r--@ 1 mist staff 623902720 6 jun 22:14 ubuntu-14.04.2-server-amd64.iso we need to extract the kernel and initrd, which is a little tricky, because os x doesn’t recognize the hybrid file system on the image without a little hack: $ dd if=/dev/zero bs=2k count=1 of=/tmp/tmp.iso $ dd if=ubuntu-14.04.2-server-amd64.iso bs=2k skip=1 >> /tmp/tmp.iso $ hdiutil attach /tmp/tmp.iso $ cp /volumes/ubuntu-server\ 14/install/vmlinuz . $ cp /volumes/ubuntu-server\ 14/install/initrd.gz . create a virtual hard disk image (8 gb in the example): $ dd if=/dev/zero of=hdd.img bs=1g count=8 then create a script to run xhyve with the correct arguments for the installer: #!/bin/sh kernel="ubuntu/vmlinuz" initrd="ubuntu/initrd.gz" cmdline="earlyprintk=serial console=ttys0 acpi=off" mem="-m 1g" #smp="-c 2" net="-s 2:0,virtio-net" img_cd="-s 3,ahci-cd,ubuntu/ubuntu-14.04.2-server-amd64.iso" img_hdd="-s 4,virtio-blk,ubuntu/hdd.img" pci_dev="-s 0:0,hostbridge -s 31,lpc" lpc_dev="-l com1,stdio" build/xhyve $mem $smp $pci_dev $lpc_dev $net $img_cd $img_hdd -f kexec,$kernel,$initrd,"$cmdline" you will want networking enabled, so it’s easiest to run the script as root (this requirement is lifted if you codesign the binary): $ sudo ./xhyverun_ubuntu_install.sh you will see the ubuntu text mode installer: ┌───────────────────────┤ [!!] select a language ├────────────────────────┐ │ │ │ choose the language to be used for the installation process. the │ │ selected language will also be the default language for the installed │ │ system. │ │ │ │ language: │ │ │ │ c │ │ english │ │ │ │ │ │ │ └─────────────────────────────────────────────────────────────────────────┘ moves; selects; activates buttons all answers should be straightforward, and the defaults are usually fine. make sure to select “yes” when asked “install the grub boot loader to the master boot record”. at the very end, on the “installation complete” screen, select “go back” and “execute a shell”, so you can copy the installed kernel and initrd to the mac side. in the vm, type this: # cd /target # sbin/ifconfig # tar c boot | nc -l -p 1234 on the mac, type this, replacing the ip with the output from ifconfig before: $ cd ubuntu $ nc 192.168.64.7 1234 | tar x in the vm, exit the shell: # exit then select “finish the installation”. to run the ubuntu installation from the virtual hard disk, create the following script, fixing up the kernel and initrd version numbers: #!/bin/sh kernel="ubuntu/boot/vmlinuz-3.16.0-30-generic" initrd="ubuntu/boot/initrd.img-3.16.0-30-generic" cmdline="earlyprintk=serial console=ttys0 acpi=off root=/dev/vda1 ro" mem="-m 1g" #smp="-c 2" net="-s 2:0,virtio-net" img_hdd="-s 4,virtio-blk,ubuntu/hdd.img" pci_dev="-s 0:0,hostbridge -s 31,lpc" lpc_dev="-l com1,stdio" build/xhyve $mem $smp $pci_dev $lpc_dev $net $img_cd $img_hdd -f kexec,$kernel,$initrd,"$cmdline" then run the script: $ sudo ./xhyverun_ubuntu.sh to make your linux installation useful, you may want to install an ssh server: $ sudo apt-get install openssh-server or install a full ui that you can access using vnc: $ sudo apt-get install xubuntu-desktop vnc4server then run the vnc server: $ vnc4server :0 -geometry 1024x768 and conntect to it by pasting this into finder’s cmd+k “connect to server” dialog: vnc://ubuntu.local if you also follow skerit’s ubuntu vnc tutorial, you’ll get to a desktop like this. next steps xhyve is very basic and lightweight, but it has a lot of potential. if you are a developer, you are welcome to contribute to it. a list of current todos and ideas is part of the readme file in the repository. this entry was posted in uncategorized on june 9, 2015 by michael steil. reconstructing some source of microsoft basic for 8080 3 replies microsoft basic for 6502 exists digitally in source form – the older version of the intel 8080 cpu only exists on paper though: as a printout in the archives of harvard university. some snippets of the code are public though: ian griffiths held the printout in his hands and took notes. he copied down several lines from the first page. in harry lewis’s blog post, he shows a picture of some lines of the reproduction that is display on the the wall of the ground floor lounge of the maxwell dworkin building at harvard. david j. malan has a collection of photos of the maxwell dworkin reproductions online. the computer history museum in mountain view, california has a video on display in the software section that tells the story of the company microsoft. in this video, they show the first page of 8080 basic: together with the other two sources, we can reconstruct the start of the first page: 00100 mcssim(stari) 00120 00140 title basic mcs 8080 gates/allen/davidoff 00160 ifndef length, 00200 if1;< 00220 ife length, 00240 ife length-1; 00260 ife length-2; 00280 ife string, 00300 ifn string, 00320 > 00340 subttl version 1.1 -- more features to come 00360 comment * 00380 00400 ------------------------------------------- 00420 copyright 1975 by bill gates and paul allen 00440 ------------------------------------------- 00460 00480 00500 written originally on the pdp-10 at harvard from 00520 february 9 to april 27 00540 00560 paul allen wrote the non-runtime stuff. 00580 bill gates wrote the runtime stuff. 00600 monte davidoff wrote the math package. 00620 00640 things to do: 00641 syntax problems (or) 00642 nice errors 00643 allow ^w and ^c in list command 00646 tape i/o 00648 buffer i/o 00650 usr ?? 00652 else 00660 user-defined functions(multi-arg,multi-line,strings) 00680 make stack boundary stuff exact (fout 24 fin 14) punch, delete;,. inline constant conversion -- make it work simple strings while this is nice, it would be much nicer to have more, maybe all of the original source. can someone take high resolution photos of the first eight pages on display on the the wall of the ground floor lounge of the maxwell dworkin building at harvard? can someone make a copy of the printout at the harvard university archives? applications like microsoft office lens can make high quality copies of printouts with a phone. this entry was posted in archeology on april 14, 2015 by michael steil. making obsolete code run again: the mxass 6502 cross assembler 6 replies here’s the challenge: take code that you wrote some 20 years ago in an obsolete programming language for an obsolete platform, make it run on a modern system (without emulation!)… and actually make it useful! in 1995, i started developing a 6502 cross assembler for ms-dos, in my then favorite languages: powerbasic for the bulk of it, and lots of 8086 inline assembly to speed up string operations. i mostly used it for my own c64 projects, and i was very proud of its speed: a fraction of a second to produce several kb of binary code on a 386. in september 1996, i decided that turbo pascal was actually the better language, and converted the source line by line, but keeping all the inline assembly. development continued until june 1998. in january 2008, i rediscovered the source and wanted to see whether it could be ported to run on modern computers. i used p2c to convert the pascal source into c, and spend two days cleaning up the c and rewriting the assembly in c until it correctly compiled my regression test – but the code was still using pascal strings, for example. recently, i dug into my floppy disk collection to recover as many revisions of the source as possible, converted the whole (surviving) history into a git repository, and put it on github.com/mist64/mxass. the c version of mxass should run on any modern operating system, and it’s actually a useful piece of software, with some unique features. it supports 6502 with illegal opcodes, 65816 and z80 assembly, and it tries to be backwards compatible with the “64′er” set of assemblers (hypra-ass, giga-ass, vis-ass, assblaster, f8-assblaster), in fact, f8-assblaster source printed to a file in an emulator should assemble with very few changes. that said, please do not use it for new projects. use cc65 for that. what is the oldest source you have written for an obsolete platform that have ported forward to modern systems? this entry was posted in 6502, archeology on march 10, 2015 by michael steil. emulating the intel 8080 on a mos 6502 13 replies emulating older computers on modern, much faster systems, is very common nowadays – but how about emulating the intel 8080 (1974) on a mos 6502 system like the kim-1 (1975)? the “8080 simulator for the 6502″ by dann mccreary from 1978 does exactly that. why imitate one microprocessor with another? you probably purchased this 8080 simulator package to do one or more of the following: run existing 8080 software on your 6502 write, test and debug your own 8080 software without having to purchase a complete 8080 based system learn something about the architecture and instruction set of the 8080 via hands-on experience the emulator is extremely size-optimized and fits in less than 1 kb of ram. this was done by compressing the 256-entry opcode space into 25 sections of similar instructions that could be handled by one generic function. the four-page article “8080 simulation with a 6502″ (micro – the 6502 journal, issue 16, september 1979) explains the motivation and design of the software in detail: dann mccreary: 8080 simulation with a 6502 [1979] and here is the original commented source code with usage instructions: dann mccreary: an 8080 simulator for the 6502, kim-1 version [1978] thanks a lot to dann mccreary, who provided scans of his original work, as well as additional insights: i wrote this by hand, pencil and paper assembly (btw, did you ever read carl helmer’s article about pencil and paper in one of the very early issues of byte magazine? and much of the simulator was written as i rode the bus to and from work… about the tools used to create this program: honestly, i don’t remember for certain… but… more than likely, it is a fake – i.e., i probably just text-edited a listing in “assembler listing” format for the purpose of publishing the code and “looking professional”… consequently, be on the lookout for typographical (and thus operational) errors that could be “in there” … the all-upper-case makes me think i printed this stuff out on an old drum printer that i resurrected from the american surplus computer company in boston back in the ’70s… and there’s yet another story! the text editor may likely have been running on my apple ][…. or maybe “borrowed” from some company where i was working at the time? apple-80 dann later ported the simulator to the apple-][. the tape dump of the resulting product “apple-80″ can be found at brutaldeluxe.fr. this entry was posted in 6502, archeology on march 3, 2015 by michael steil. post navigation ← older posts search for: recent posts announcement: “the ultimate game boy talk” at 33c3 reverse-engineered geos 2.0 for c64 source code copy protection traps in geos for c64 how amica paint protected tampering with its credits why does petscii have upper case and lower case reversed? github blogrolldebugmode alex ionescu’s blog fun with virtualization os/2 museum categories 6502 archeology default digital video hacks literature puzzle scumm security tricks trivia uncategorized whines meta log in entries rss comments rss wordpress.org proudly powered by wordpress


Here you find all texts from your page as Google (googlebot) and others search engines seen it.

Words density analysis:

Numbers of all words: 6078

One word

Two words phrases

Three words phrases

the - 7.47% (454)
and - 2.12% (129)
all - 1.41% (86)
com - 1.37% (83)
for - 1.09% (66)
his - 0.94% (57)
sta - 0.9% (55)
with - 0.86% (52)
this - 0.86% (52)
use - 0.79% (48)
serial - 0.77% (47)
code - 0.72% (44)
that - 0.72% (44)
was - 0.67% (41)
system - 0.67% (41)
are - 0.59% (36)
number - 0.59% (36)
case - 0.58% (35)
our - 0.58% (35)
low - 0.56% (34)
mac - 0.56% (34)
get - 0.54% (33)
out - 0.49% (30)
you - 0.49% (30)
run - 0.49% (30)
--- - 0.48% (29)
from - 0.48% (29)
6502 - 0.46% (28)
but - 0.46% (28)
one - 0.43% (26)
source - 0.43% (26)
into - 0.41% (25)
geos - 0.41% (25)
│ - 0.39% (24)
can - 0.39% (24)
vector - 0.39% (24)
byte - 0.39% (24)
macro - 0.38% (23)
gets - 0.38% (23)
call - 0.38% (23)
make - 0.38% (23)
ubuntu - 0.38% (23)
upper - 0.36% (22)
line - 0.36% (22)
application - 0.36% (22)
getserialnumber - 0.35% (21)
character - 0.35% (21)
able - 0.35% (21)
which - 0.33% (20)
cross - 0.33% (20)
install - 0.33% (20)
xhyve - 0.33% (20)
lower - 0.31% (19)
ever - 0.31% (19)
inc - 0.31% (19)
lda - 0.31% (19)
macros - 0.31% (19)
mode - 0.31% (19)
very - 0.3% (18)
here - 0.3% (18)
fin - 0.3% (18)
pet - 0.3% (18)
port - 0.3% (18)
will - 0.3% (18)
different - 0.28% (17)
first - 0.28% (17)
add - 0.28% (17)
not - 0.28% (17)
work - 0.28% (17)
protect - 0.28% (17)
commodore - 0.28% (17)
have - 0.28% (17)
some - 0.26% (16)
put - 0.26% (16)
version - 0.26% (16)
copy - 0.26% (16)
its - 0.26% (16)
string - 0.26% (16)
log - 0.26% (16)
8080 - 0.25% (15)
– - 0.25% (15)
hack - 0.25% (15)
init - 0.25% (15)
file - 0.25% (15)
bit - 0.25% (15)
ran - 0.25% (15)
man - 0.25% (15)
efi - 0.23% (14)
server - 0.23% (14)
tar - 0.23% (14)
like - 0.23% (14)
macross - 0.23% (14)
post - 0.23% (14)
time - 0.23% (14)
art - 0.23% (14)
try - 0.21% (13)
boot - 0.21% (13)
well - 0.21% (13)
any - 0.21% (13)
original - 0.21% (13)
has - 0.21% (13)
key - 0.21% (13)
used - 0.21% (13)
applications - 0.2% (12)
disk - 0.2% (12)
support - 0.2% (12)
… - 0.2% (12)
two - 0.2% (12)
graphics - 0.2% (12)
ram - 0.2% (12)
more - 0.2% (12)
pat - 0.18% (11)
linux - 0.18% (11)
still - 0.18% (11)
does - 0.18% (11)
change - 0.18% (11)
fun - 0.18% (11)
return - 0.18% (11)
instruction - 0.18% (11)
assemble - 0.18% (11)
address - 0.18% (11)
read - 0.18% (11)
initrd - 0.18% (11)
would - 0.18% (11)
git - 0.18% (11)
produce - 0.18% (11)
set - 0.18% (11)
entry - 0.18% (11)
other - 0.18% (11)
end - 0.16% (10)
steil. - 0.16% (10)
could - 0.16% (10)
michael - 0.16% (10)
kernel - 0.16% (10)
paint - 0.16% (10)
been - 0.16% (10)
game - 0.16% (10)
link - 0.16% (10)
graphicsstring - 0.16% (10)
posted - 0.16% (10)
function - 0.16% (10)
characters - 0.16% (10)
assembler - 0.16% (10)
text - 0.16% (10)
language - 0.16% (10)
protection - 0.16% (10)
binary - 0.16% (10)
sabotage - 0.16% (10)
modern - 0.16% (10)
only - 0.16% (10)
rts - 0.15% (9)
this: - 0.15% (9)
computer - 0.15% (9)
c64 - 0.15% (9)
press - 0.15% (9)
then - 0.15% (9)
virtual - 0.15% (9)
old - 0.15% (9)
store - 0.15% (9)
own - 0.15% (9)
were - 0.15% (9)
shift - 0.15% (9)
ascii - 0.15% (9)
assembly - 0.15% (9)
create - 0.15% (9)
had - 0.15% (9)
archeology - 0.15% (9)
running - 0.15% (9)
fix - 0.15% (9)
same - 0.13% (8)
"a" - 0.13% (8)
point - 0.13% (8)
value - 0.13% (8)
basic - 0.13% (8)
keyboard - 0.13% (8)
they - 0.13% (8)
define - 0.13% (8)
check - 0.13% (8)
cause - 0.13% (8)
kernal - 0.13% (8)
load - 0.13% (8)
way - 0.13% (8)
trap - 0.13% (8)
new - 0.13% (8)
petscii - 0.13% (8)
cpu - 0.13% (8)
talk - 0.13% (8)
6502, - 0.13% (8)
back - 0.13% (8)
start - 0.12% (7)
slinky - 0.12% (7)
uses - 0.12% (7)
implementation - 0.12% (7)
... - 0.12% (7)
amica - 0.12% (7)
issue - 0.12% (7)
written - 0.12% (7)
software - 0.12% (7)
makes - 0.12% (7)
follow - 0.12% (7)
compile - 0.12% (7)
exact - 0.12% (7)
build - 0.12% (7)
while - 0.12% (7)
stored - 0.12% (7)
message - 0.12% (7)
select - 0.12% (7)
$03 - 0.12% (7)
thu - 0.12% (7)
ported - 0.12% (7)
page - 0.12% (7)
produces - 0.12% (7)
using - 0.12% (7)
find - 0.12% (7)
now - 0.12% (7)
example - 0.12% (7)
replies - 0.12% (7)
generic - 0.1% (6)
their - 0.1% (6)
stiller - 0.1% (6)
because - 0.1% (6)
2016 - 0.1% (6)
eight - 0.1% (6)
trick - 0.1% (6)
your - 0.1% (6)
since - 0.1% (6)
numbers - 0.1% (6)
may - 0.1% (6)
computers - 0.1% (6)
them - 0.1% (6)
complete - 0.1% (6)
these - 0.1% (6)
type - 0.1% (6)
table - 0.1% (6)
index - 0.1% (6)
also - 0.1% (6)
second - 0.1% (6)
checks - 0.1% (6)
early - 0.1% (6)
area - 0.1% (6)
there - 0.1% (6)
look - 0.1% (6)
skip - 0.1% (6)
see - 0.1% (6)
useful - 0.1% (6)
compare - 0.1% (6)
display - 0.1% (6)
even - 0.1% (6)
graphical - 0.1% (6)
uppercase - 0.1% (6)
lddeskacc - 0.1% (6)
about - 0.1% (6)
ldy - 0.1% (6)
mos - 0.1% (6)
desktop - 0.1% (6)
vnc - 0.1% (6)
than - 0.1% (6)
program - 0.1% (6)
files - 0.08% (5)
before - 0.08% (5)
github - 0.08% (5)
published - 0.08% (5)
actually - 0.08% (5)
system's - 0.08% (5)
solution - 0.08% (5)
($41) - 0.08% (5)
virtualization - 0.08% (5)
64'er - 0.08% (5)
project - 0.08% (5)
memory - 0.08% (5)
repository - 0.08% (5)
just - 0.08% (5)
development - 0.08% (5)
dann - 0.08% (5)
full - 0.08% (5)
checksum - 0.08% (5)
simulator - 0.08% (5)
should - 0.08% (5)
how - 0.08% (5)
found - 0.08% (5)
magazine - 0.08% (5)
1986 - 0.08% (5)
apple - 0.08% (5)
convert - 0.08% (5)
did - 0.08% (5)
patch - 0.08% (5)
iny - 0.08% (5)
directory - 0.08% (5)
dst - 0.08% (5)
characters. - 0.08% (5)
enter - 0.08% (5)
o.stiller - 0.08% (5)
core - 0.08% (5)
user - 0.08% (5)
extra - 0.08% (5)
script - 0.08% (5)
form - 0.08% (5)
installation - 0.08% (5)
story - 0.08% (5)
instructions - 0.08% (5)
increment - 0.08% (5)
without - 0.08% (5)
allen - 0.08% (5)
wrote - 0.08% (5)
boy - 0.08% (5)
bios - 0.08% (5)
come - 0.08% (5)
down - 0.08% (5)
based - 0.08% (5)
harvard - 0.08% (5)
sudo - 0.08% (5)
else - 0.08% (5)
later - 0.08% (5)
list - 0.08% (5)
small - 0.08% (5)
smp - 0.08% (5)
every - 0.08% (5)
adc - 0.08% (5)
want - 0.07% (4)
much - 0.07% (4)
done - 0.07% (4)
pointer - 0.07% (4)
printout - 0.07% (4)
mccreary - 0.07% (4)
why - 0.07% (4)
high - 0.07% (4)
habitat - 0.07% (4)
tampering - 0.07% (4)
following - 0.07% (4)
2015 - 0.07% (4)
where - 0.07% (4)
match - 0.07% (4)
microsoft - 0.07% (4)
decided - 0.07% (4)
credits - 0.07% (4)
created - 0.07% (4)
nice - 0.07% (4)
mist - 0.07% (4)
here’s - 0.07% (4)
stuff - 0.07% (4)
hard - 0.07% (4)
lot - 0.07% (4)
until - 0.07% (4)
what - 0.07% (4)
museum - 0.07% (4)
digital - 0.07% (4)
syntax - 0.07% (4)
drawing - 0.07% (4)
between - 0.07% (4)
few - 0.07% (4)
who - 0.07% (4)
lines - 0.07% (4)
changed - 0.07% (4)
operating - 0.07% (4)
available - 0.07% (4)
e820: - 0.07% (4)
lightweight - 0.07% (4)
$00 - 0.07% (4)
obsolete - 0.07% (4)
undefined - 0.07% (4)
dos - 0.07% (4)
pressing - 0.07% (4)
$ff - 0.07% (4)
2.0 - 0.07% (4)
note - 0.07% (4)
require - 0.07% (4)
clc - 0.07% (4)
jsr - 0.07% (4)
tiny - 0.07% (4)
unix - 0.07% (4)
probably - 0.07% (4)
together - 0.07% (4)
shifted - 0.07% (4)
emulator - 0.07% (4)
$ed - 0.07% (4)
box - 0.07% (4)
it’s - 0.07% (4)
codes - 0.07% (4)
prg - 0.07% (4)
ife - 0.07% (4)
features - 0.07% (4)
ultimate - 0.07% (4)
cmp - 0.07% (4)
after - 0.07% (4)
games - 0.07% (4)
$d82f - 0.07% (4)
ldx - 0.07% (4)
map - 0.05% (3)
tricks - 0.05% (3)
history - 0.05% (3)
older - 0.05% (3)
developing - 0.05% (3)
$c0-$df - 0.05% (3)
uncategorized - 0.05% (3)
maxwell - 0.05% (3)
client - 0.05% (3)
gates - 0.05% (3)
product - 0.05% (3)
talk” - 0.05% (3)
reply - 0.05% (3)
menu - 0.05% (3)
working - 0.05% (3)
developed - 0.05% (3)
david - 0.05% (3)
one. - 0.05% (3)
video - 0.05% (3)
“the - 0.05% (3)
blog - 0.05% (3)
intel - 0.05% (3)
company - 0.05% (3)
lucasfilm - 0.05% (3)
$60-$7f - 0.05% (3)
article - 0.05% (3)
paper - 0.05% (3)
dworkin - 0.05% (3)
many - 0.05% (3)
1984 - 0.05% (3)
“in - 0.05% (3)
mxass - 0.05% (3)
via - 0.05% (3)
test - 0.05% (3)
movew - 0.05% (3)
line, - 0.05% (3)
hook_vector - 0.05% (3)
exit - 0.05% (3)
little - 0.05% (3)
macros. - 0.05% (3)
constant - 0.05% (3)
bridge - 0.05% (3)
…) - 0.05% (3)
strings - 0.05% (3)
years - 0.05% (3)
take - 0.05% (3)
several - 0.05% (3)
acpi=off - 0.05% (3)
bhyve - 0.05% (3)
projects - 0.05% (3)
console=ttys0 - 0.05% (3)
linux. - 0.05% (3)
earlyprintk=serial - 0.05% (3)
command - 0.05% (3)
pascal - 0.05% (3)
(gcc - 0.05% (3)
enough - 0.05% (3)
initializing - 0.05% (3)
cgroup - 0.05% (3)
org - 0.05% (3)
emulating - 0.05% (3)
machines - 0.05% (3)
subsys - 0.05% (3)
debug - 0.05% (3)
00460 - 0.05% (3)
tools - 0.05% (3)
“macross” - 0.05% (3)
“slinky” - 0.05% (3)
output - 0.05% (3)
documentation - 0.05% (3)
archive - 0.05% (3)
present - 0.05% (3)
system. - 0.05% (3)
default - 0.05% (3)
fixed - 0.05% (3)
.prg - 0.05% (3)
/tmp/tmp.iso - 0.05% (3)
initrd, - 0.05% (3)
ubuntu-14.04.2-server-amd64.iso - 0.05% (3)
jun - 0.05% (3)
image - 0.05% (3)
inline - 0.05% (3)
writing - 0.05% (3)
doesn’t - 0.05% (3)
extract - 0.05% (3)
hello.bin - 0.05% (3)
bs=1 - 0.05% (3)
ff, - 0.05% (3)
comment - 0.05% (3)
major - 0.05% (3)
disable - 0.05% (3)
detect - 0.05% (3)
bytes - 0.05% (3)
someone - 0.05% (3)
though - 0.05% (3)
|.. - 0.05% (3)
supports - 0.05% (3)
jmp - 0.05% (3)
calling - 0.05% (3)
know - 0.05% (3)
inside - 0.05% (3)
1986/87" - 0.05% (3)
either - 0.05% (3)
previous - 0.05% (3)
common - 0.05% (3)
geos, - 0.05% (3)
application's - 0.05% (3)
beq - 0.05% (3)
usesystemfont - 0.05% (3)
exactly - 0.05% (3)
floppy - 0.05% (3)
supported - 0.05% (3)
hacks - 0.05% (3)
usual - 0.05% (3)
#$00 - 0.05% (3)
plus - 0.05% (3)
came - 0.05% (3)
special - 0.05% (3)
attacker - 0.05% (3)
equal - 0.05% (3)
middle - 0.05% (3)
didn't - 0.05% (3)
binary. - 0.05% (3)
overwrite - 0.05% (3)
$5a - 0.05% (3)
64, - 0.05% (3)
code. - 0.05% (3)
$c7e4 - 0.05% (3)
$dd - 0.05% (3)
august - 0.05% (3)
public - 0.05% (3)
allow - 0.05% (3)
symbol - 0.05% (3)
traps - 0.05% (3)
unshifted - 0.05% (3)
($c1) - 0.05% (3)
♠ - 0.05% (3)
changing - 0.05% (3)
path - 0.05% (3)
contains - 0.05% (3)
reverse-engineered - 0.05% (3)
lowercase - 0.05% (3)
ascii, - 0.05% (3)
similar - 0.05% (3)
specific - 0.05% (3)
(and - 0.05% (3)
when - 0.05% (3)
need - 0.05% (3)
prevent - 0.05% (3)
way, - 0.05% (3)
protected - 0.05% (3)
copies - 0.05% (3)
half - 0.05% (3)
compared - 0.05% (3)
potential - 0.05% (3)
proper - 0.05% (3)
complex - 0.05% (3)
33c3 - 0.03% (2)
lounge - 0.03% (2)
.,d5f9 - 0.03% (2)
section - 0.03% (2)
.,d5f2 - 0.03% (2)
ground - 0.03% (2)
though: - 0.03% (2)
wall - 0.03% (2)
photos - 0.03% (2)
collection - 0.03% (2)
floor - 0.03% (2)
adding - 0.03% (2)
building - 0.03% (2)
.,d5f7 - 0.03% (2)
reproduction - 0.03% (2)
$d5fc - 0.03% (2)
.,d5f4 - 0.03% (2)
copied - 0.03% (2)
hands - 0.03% (2)
ian - 0.03% (2)
archives - 0.03% (2)
conntect - 0.03% (2)
starting - 0.03% (2)
$net - 0.03% (2)
installed - 0.03% (2)
called - 0.03% (2)
requirement - 0.03% (2)
root - 0.03% (2)
kexec,$kernel,$initrd,"$cmdline" - 0.03% (2)
$img_hdd - 0.03% (2)
$img_cd - 0.03% (2)
$lpc_dev - 0.03% (2)
vm, - 0.03% (2)
$pci_dev - 0.03% (2)
$smp - 0.03% (2)
$mem - 0.03% (2)
build/xhyve - 0.03% (2)
com1,stdio" - 0.03% (2)
lpc_dev="-l - 0.03% (2)
31,lpc" - 0.03% (2)
0:0,hostbridge - 0.03% (2)
“install - 0.03% (2)
1234 - 0.03% (2)
$c218 - 0.03% (2)
subtle - 0.03% (2)
layout - 0.03% (2)
exists - 0.03% (2)
.,d5fc - 0.03% (2)
don't - 0.03% (2)
june - 0.03% (2)
vector. - 0.03% (2)
welcome - 0.03% (2)
sure - 0.03% (2)
"desk - 0.03% (2)
split - 0.03% (2)
files. - 0.03% (2)
vnc4server - 0.03% (2)
vnc: - 0.03% (2)
access - 0.03% (2)
apt-get - 0.03% (2)
server: - 0.03% (2)
ssh - 0.03% (2)
ifconfig - 0.03% (2)
optimized - 0.03% (2)
sets - 0.03% (2)
$c1d8 - 0.03% (2)
most - 0.03% (2)
purchase - 0.03% (2)
disk. - 0.03% (2)
package - 0.03% (2)
1978 - 0.03% (2)
necessary - 0.03% (2)
6502″ - 0.03% (2)
“8080 - 0.03% (2)
kim-1 - 0.03% (2)
march - 0.03% (2)
opcode - 0.03% (2)
forward - 0.03% (2)
platform - 0.03% (2)
that. - 0.03% (2)
pull - 0.03% (2)
kind - 0.03% (2)
printed - 0.03% (2)
f8-assblaster - 0.03% (2)
assemblers - 0.03% (2)
tries - 0.03% (2)
verify - 0.03% (2)
space - 0.03% (2)
days - 0.03% (2)
dump - 0.03% (2)
rss - 0.03% (2)
unauthorized - 0.03% (2)
duplication - 0.03% (2)
recent - 0.03% (2)
search - 0.03% (2)
posts - 0.03% (2)
announcement: - 0.03% (2)
number. - 0.03% (2)
apple-80 - 0.03% (2)
drive - 0.03% (2)
likely - 0.03% (2)
another - 0.03% (2)
itself - 0.03% (2)
listing - 0.03% (2)
pencil - 0.03% (2)
provided - 0.03% (2)
mccreary: - 0.03% (2)
design - 0.03% (2)
simulation - 0.03% (2)
numbers. - 0.03% (2)
continued - 0.03% (2)
show - 0.03% (2)
------------------------------------------- - 0.03% (2)
integrating - 0.03% (2)
00440 - 0.03% (2)
paul - 0.03% (2)
people - 0.03% (2)
bill - 0.03% (2)
4,virtio-blk,ubuntu/hdd.img" - 0.03% (2)
1975 - 0.03% (2)
00420 - 0.03% (2)
ifn - 0.03% (2)
april - 0.03% (2)
$$/ - 0.03% (2)
string,usually - 0.03% (2)
something - 0.03% (2)
length,mcs - 0.03% (2)
00100 - 0.03% (2)
reconstruct - 0.03% (2)
.,d5ef - 0.03% (2)
00480 - 0.03% (2)
match, - 0.03% (2)
converted - 0.03% (2)
asked - 0.03% (2)
random - 0.03% (2)
september - 0.03% (2)
proud - 0.03% (2)
speed - 0.03% (2)
it, - 0.03% (2)
ago - 0.03% (2)
disk, - 0.03% (2)
14, - 0.03% (2)
university - 0.03% (2)
maybe - 0.03% (2)
stuff. - 0.03% (2)
versions - 0.03% (2)
time, - 0.03% (2)
sources - 0.03% (2)
existing - 0.03% (2)
i/o - 0.03% (2)
tape - 0.03% (2)
errors - 0.03% (2)
davidoff - 0.03% (2)
runtime - 0.03% (2)
pci_dev="-s - 0.03% (2)
talk, - 0.03% (2)
img_hdd="-s - 0.03% (2)
fixes - 0.03% (2)
instead - 0.03% (2)
500 - 0.03% (2)
i.e. - 0.03% (2)
security - 0.03% (2)
contained - 0.03% (2)
"amica - 0.03% (2)
paint" - 0.03% (2)
cleanups - 0.03% (2)
broken - 0.03% (2)
effective - 0.03% (2)
describe - 0.03% (2)
pages - 0.03% (2)
again - 0.03% (2)
completely - 0.03% (2)
compiling - 0.03% (2)
simple - 0.03% (2)
december - 0.03% (2)
ways - 0.03% (2)
atari - 0.03% (2)
strout - 0.03% (2)
monitor - 0.03% (2)
if=hello.bin - 0.03% (2)
example: - 0.03% (2)
reach - 0.03% (2)
followed - 0.03% (2)
kernal. - 0.03% (2)
output, - 0.03% (2)
whether - 0.03% (2)
hello.prg - 0.03% (2)
easy - 0.03% (2)
0xc000 - 0.03% (2)
hello: - 0.03% (2)
find, - 0.03% (2)
hello.o - 0.03% (2)
function. - 0.03% (2)
prefixed - 0.03% (2)
notation - 0.03% (2)
world!", - 0.03% (2)
"hello - 0.03% (2)
text: - 0.03% (2)
script, - 0.03% (2)
lots - 0.03% (2)
addressing - 0.03% (2)
produced - 0.03% (2)
reversed? - 0.03% (2)
powerful - 0.03% (2)
themselves - 0.03% (2)
including - 0.03% (2)
times - 0.03% (2)
built - 0.03% (2)
symbols - 0.03% (2)
case. - 0.03% (2)
($61) - 0.03% (2)
hardware - 0.03% (2)
fallback - 0.03% (2)
standard - 0.03% (2)
system, - 0.03% (2)
both - 0.03% (2)
"a", - 0.03% (2)
$40-$5f - 0.03% (2)
enabled, - 0.03% (2)
upper/lower - 0.03% (2)
assembler, - 0.03% (2)
comparison - 0.03% (2)
entertainment - 0.03% (2)
#$14 - 0.03% (2)
c000.txt - 0.03% (2)
architecture - 0.03% (2)
|.8. - 0.03% (2)
.1.x=000 - 0.03% (2)
changes - 0.03% (2)
1990" - 0.03% (2)
"by - 0.03% (2)
sun - 0.03% (2)
dey - 0.03% (2)
1987 - 0.03% (2)
code: - 0.03% (2)
$ec - 0.03% (2)
originally - 0.03% (2)
games, - 0.03% (2)
online - 0.03% (2)
$dd" - 0.03% (2)
open - 0.03% (2)
ltd. - 0.03% (2)
glitches - 0.03% (2)
bsout - 0.03% (2)
(or - 0.03% (2)
2:0,virtio-net" - 0.03% (2)
[mem - 0.03% (2)
saved - 0.03% (2)
ram. - 0.03% (2)
address, - 0.03% (2)
0x40000 - 0.03% (2)
right - 0.03% (2)
agp - 0.03% (2)
active - 0.03% (2)
usable - 0.03% (2)
bios-e820: - 0.03% (2)
tricky - 0.03% (2)
reserve - 0.03% (2)
preventing - 0.03% (2)
previously - 0.03% (2)
counter - 0.03% (2)
2014 - 0.03% (2)
clone - 0.03% (2)
managed - 0.03% (2)
obfuscated - 0.03% (2)
distribution - 0.03% (2)
work, - 0.03% (2)
changed, - 0.03% (2)
correct - 0.03% (2)
net="-s - 0.03% (2)
#smp="-c - 0.03% (2)
1g" - 0.03% (2)
mem="-m - 0.03% (2)
cmdline="earlyprintk=serial - 0.03% (2)
#!/bin/sh - 0.03% (2)
installer: - 0.03% (2)
arguments - 0.03% (2)
compiler - 0.03% (2)
please - 0.03% (2)
/volumes/ubuntu-server\ - 0.03% (2)
bs=2k - 0.03% (2)
if=/dev/zero - 0.03% (2)
cc65 - 0.03% (2)
scheme - 0.03% (2)
single - 0.03% (2)
applications. - 0.03% (2)
current - 0.03% (2)
big - 0.03% (2)
softworks - 0.03% (2)
calls - 0.03% (2)
emit - 0.03% (2)
doc/writeup_6502.itr - 0.03% (2)
indirectly - 0.03% (2)
next - 0.03% (2)
incrementing - 0.03% (2)
findftypes - 0.03% (2)
(the - 0.03% (2)
$0301,x - 0.03% (2)
$0300,x - 0.03% (2)
irq, - 0.03% (2)
troff - 0.03% (2)
vector_index_irq - 0.03% (2)
x[0x0300] - 0.03% (2)
new, - 0.03% (2)
through - 0.03% (2)
freturn(operand - 0.03% (2)
melse - 0.03% (2)
(isimmediatemode(operand)) - 0.03% (2)
mif - 0.03% (2)
repository. - 0.03% (2)
format - 0.03% (2)
express - 0.03% (2)
won't - 0.03% (2)
mac, - 0.03% (2)
spirit - 0.03% (2)
networking - 0.03% (2)
$ff,y - 0.03% (2)
fact, - 0.03% (2)
values - 0.03% (2)
size - 0.03% (2)
lightweight, - 0.03% (2)
looking - 0.03% (2)
think - 0.03% (2)
address. - 0.03% (2)
can't - 0.03% (2)
hypervisor.framework - 0.03% (2)
vector, - 0.03% (2)
well. - 0.03% (2)
january - 0.03% (2)
already - 0.03% (2)
(bin - 0.03% (2)
requests - 0.03% (2)
wordpress - 0.03% (2)
of the - 0.77% (47)
in the - 0.41% (25)
to the - 0.3% (18)
at the - 0.26% (16)
on the - 0.25% (15)
the system - 0.23% (14)
lower case - 0.23% (14)
for the - 0.23% (14)
serial number - 0.21% (13)
with a - 0.2% (12)
from the - 0.18% (11)
the source - 0.18% (11)
the first - 0.18% (11)
│ │ - 0.18% (11)
upper case - 0.18% (11)
by michael - 0.16% (10)
this entry - 0.16% (10)
michael steil. - 0.16% (10)
if the - 0.16% (10)
entry was - 0.16% (10)
posted in - 0.16% (10)
was posted - 0.16% (10)
as well - 0.15% (9)
the code - 0.15% (9)
the original - 0.15% (9)
getserialnumber vector - 0.15% (9)
have been - 0.15% (9)
the getserialnumber - 0.13% (8)
with the - 0.13% (8)
byte of - 0.13% (8)
and in - 0.13% (8)
amica paint - 0.12% (7)
character set - 0.12% (7)
but the - 0.12% (7)
archeology on - 0.12% (7)
so the - 0.12% (7)
the serial - 0.12% (7)
into the - 0.12% (7)
6502, archeology - 0.1% (6)
in 6502, - 0.1% (6)
2016 by - 0.1% (6)
would have - 0.1% (6)
by the - 0.1% (6)
you can - 0.1% (6)
well as - 0.1% (6)
the geos - 0.1% (6)
and lower - 0.1% (6)
system call - 0.1% (6)
hi byte - 0.1% (6)
copy protection - 0.1% (6)
that the - 0.08% (5)
a ($41) - 0.08% (5)
here is - 0.08% (5)
serial numbers - 0.08% (5)
the application - 0.08% (5)
produces a - 0.08% (5)
game boy - 0.08% (5)
case and - 0.08% (5)
$ sudo - 0.08% (5)
to run - 0.08% (5)
which i - 0.08% (5)
the same - 0.08% (5)
the hack - 0.08% (5)
if you - 0.08% (5)
but it - 0.08% (5)
and the - 0.08% (5)
graphical characters - 0.07% (4)
lda $03 - 0.07% (4)
to find - 0.07% (4)
of serial - 0.07% (4)
60 rts - 0.07% (4)
lo byte - 0.07% (4)
change the - 0.07% (4)
the following - 0.07% (4)
; read - 0.07% (4)
the address - 0.07% (4)
a copy - 0.07% (4)
the hi - 0.07% (4)
case characters - 0.07% (4)
that is - 0.07% (4)
$d82f ; - 0.07% (4)
a small - 0.07% (4)
can be - 0.07% (4)
like this: - 0.07% (4)
code to - 0.07% (4)
use the - 0.07% (4)
2015 by - 0.07% (4)
dann mccreary - 0.07% (4)
6502 cross - 0.07% (4)
the commodore - 0.07% (4)
geos 2.0 - 0.07% (4)
for c64 - 0.07% (4)
operating system - 0.07% (4)
and initrd - 0.07% (4)
a very - 0.07% (4)
kernel and - 0.07% (4)
could be - 0.07% (4)
run the - 0.07% (4)
one of - 0.07% (4)
code in - 0.07% (4)
ascii, but - 0.05% (3)
make it - 0.05% (3)
– which - 0.05% (3)
message from - 0.05% (3)
special issue - 0.05% (3)
which was - 0.05% (3)
floppy disk - 0.05% (3)
that you - 0.05% (3)
the maxwell - 0.05% (3)
maxwell dworkin - 0.05% (3)
wrote the - 0.05% (3)
all of - 0.05% (3)
the intel - 0.05% (3)
copy of - 0.05% (3)
middle of - 0.05% (3)
a modern - 0.05% (3)
#$00 ; - 0.05% (3)
running on - 0.05% (3)
an obsolete - 0.05% (3)
run on - 0.05% (3)
mos 6502 - 0.05% (3)
8080 simulator - 0.05% (3)
case petscii - 0.05% (3)
is the - 0.05% (3)
the exact - 0.05% (3)
the start - 0.05% (3)
console=ttys0 acpi=off - 0.05% (3)
into a - 0.05% (3)
the pet - 0.05% (3)
decided to - 0.05% (3)
which is - 0.05% (3)
graphical characters. - 0.05% (3)
the example - 0.05% (3)
replies the - 0.05% (3)
together with - 0.05% (3)
on xhyve - 0.05% (3)
initializing cgroup - 0.05% (3)
subsys cpu - 0.05% (3)
is that - 0.05% (3)
18 clc - 0.05% (3)
extract the - 0.05% (3)
commodore decided - 0.05% (3)
the kernel - 0.05% (3)
published a - 0.05% (3)
a little - 0.05% (3)
pet keyboard - 0.05% (3)
the very - 0.05% (3)
to extract - 0.05% (3)
should be - 0.05% (3)
is very - 0.05% (3)
basic for - 0.05% (3)
at lucasfilm - 0.05% (3)
“the ultimate - 0.05% (3)
commodore 64, - 0.05% (3)
system's serial - 0.05% (3)
number and - 0.05% (3)
the middle - 0.05% (3)
had to - 0.05% (3)
you are - 0.05% (3)
vector in - 0.05% (3)
changing the - 0.05% (3)
copies of - 0.05% (3)
to make - 0.05% (3)
will be - 0.05% (3)
on august - 0.05% (3)
and stored - 0.05% (3)
exact same - 0.05% (3)
source code - 0.05% (3)
3 replies - 0.05% (3)
the c64 - 0.05% (3)
version of - 0.05% (3)
code was - 0.05% (3)
created a - 0.05% (3)
the lddeskacc - 0.05% (3)
the application's - 0.05% (3)
read the - 0.05% (3)
about the - 0.05% (3)
boy talk” - 0.05% (3)
an attacker - 0.05% (3)
note that - 0.05% (3)
talk” at - 0.05% (3)
graphicsstring vector - 0.05% (3)
geos system - 0.05% (3)
ultimate game - 0.05% (3)
the implementation - 0.05% (3)
language for - 0.03% (2)
0:0,hostbridge -s - 0.03% (2)
dd if=/dev/zero - 0.03% (2)
cp /volumes/ubuntu-server\ - 0.03% (2)
create a - 0.03% (2)
virtual hard - 0.03% (2)
cmdline="earlyprintk=serial console=ttys0 - 0.03% (2)
of ram. - 0.03% (2)
based on - 0.03% (2)
1g" #smp="-c - 0.03% (2)
2" net="-s - 0.03% (2)
4,virtio-blk,ubuntu/hdd.img" pci_dev="-s - 0.03% (2)
31,lpc" lpc_dev="-l - 0.03% (2)
the default - 0.03% (2)
com1,stdio" build/xhyve - 0.03% (2)
$mem $smp - 0.03% (2)
addressing mode - 0.03% (2)
$net $img_cd - 0.03% (2)
$img_hdd -f - 0.03% (2)
the installed - 0.03% (2)
(isimmediatemode(operand)) { - 0.03% (2)
the ubuntu - 0.03% (2)
text mode - 0.03% (2)
} melse - 0.03% (2)
mif (isimmediatemode(operand)) - 0.03% (2)
$pci_dev $lpc_dev - 0.03% (2)
inside the - 0.03% (2)
melse { - 0.03% (2)
core linux - 0.03% (2)
a full - 0.03% (2)
be used - 0.03% (2)
virtualization solution - 0.03% (2)
that can - 0.03% (2)
applications like - 0.03% (2)
for example - 0.03% (2)
xhyve is - 0.03% (2)
ported to - 0.03% (2)
user mode - 0.03% (2)
pull requests - 0.03% (2)
the boot - 0.03% (2)
make a - 0.03% (2)
it’s a - 0.03% (2)
verify the - 0.03% (2)
the text - 0.03% (2)
the repository. - 0.03% (2)
will see - 0.03% (2)
tiny core - 0.03% (2)
protection the - 0.03% (2)
with an - 0.03% (2)
macross is - 0.03% (2)
the file - 0.03% (2)
these applications - 0.03% (2)
} macro - 0.03% (2)
= 0x40000 - 0.03% (2)
unauthorized duplication - 0.03% (2)
necessary to - 0.03% (2)
in geos - 0.03% (2)
protection traps - 0.03% (2)
getserialnumber vector, - 0.03% (2)
-s 31,lpc" - 0.03% (2)
the vm, - 0.03% (2)
it for - 0.03% (2)
not use - 0.03% (2)
on any - 0.03% (2)
c version - 0.03% (2)
– but - 0.03% (2)
up the - 0.03% (2)
on modern - 0.03% (2)
inline assembly - 0.03% (2)
that have - 0.03% (2)
assembler for - 0.03% (2)
for an - 0.03% (2)
reserve a - 0.03% (2)
the spirit - 0.03% (2)
harvard university - 0.03% (2)
the printout - 0.03% (2)
obsolete platform - 0.03% (2)
on march - 0.03% (2)
on display - 0.03% (2)
that could - 0.03% (2)
have upper - 0.03% (2)
does petscii - 0.03% (2)
geos for - 0.03% (2)
traps in - 0.03% (2)
be found - 0.03% (2)
think i - 0.03% (2)
the simulator - 0.03% (2)
8080 software - 0.03% (2)
pencil and - 0.03% (2)
and paper - 0.03% (2)
i will - 0.03% (2)
8080 simulation - 0.03% (2)
dann mccreary: - 0.03% (2)
done by - 0.03% (2)
on your - 0.03% (2)
can someone - 0.03% (2)
photos of - 0.03% (2)
exit the - 0.03% (2)
build/xhyve $mem - 0.03% (2)
server: $ - 0.03% (2)
then run - 0.03% (2)
-f kexec,$kernel,$initrd,"$cmdline" - 0.03% (2)
$img_cd $img_hdd - 0.03% (2)
$lpc_dev $net - 0.03% (2)
$smp $pci_dev - 0.03% (2)
lpc_dev="-l com1,stdio" - 0.03% (2)
managed to - 0.03% (2)
world!", 0 - 0.03% (2)
pci_dev="-s 0:0,hostbridge - 0.03% (2)
img_hdd="-s 4,virtio-blk,ubuntu/hdd.img" - 0.03% (2)
net="-s 2:0,virtio-net" - 0.03% (2)
#smp="-c 2" - 0.03% (2)
mem="-m 1g" - 0.03% (2)
sudo apt-get - 0.03% (2)
it has - 0.03% (2)
as the - 0.03% (2)
in archeology - 0.03% (2)
would be - 0.03% (2)
tricks that - 0.03% (2)
spirit of - 0.03% (2)
paul allen - 0.03% (2)
bill gates - 0.03% (2)
the software - 0.03% (2)
dworkin building - 0.03% (2)
a list - 0.03% (2)
7, 2016 - 0.03% (2)
lounge of - 0.03% (2)
ground floor - 0.03% (2)
the wall - 0.03% (2)
printout in - 0.03% (2)
in uncategorized - 0.03% (2)
file in - 0.03% (2)
could not - 0.03% (2)
"hello world!", - 0.03% (2)
byte "hello - 0.03% (2)
that will - 0.03% (2)
line drawing - 0.03% (2)
where the - 0.03% (2)
call to - 0.03% (2)
come with - 0.03% (2)
64'er magazine - 0.03% (2)
original message - 0.03% (2)
this would - 0.03% (2)
"by o.stiller - 0.03% (2)
o.stiller 1986/87" - 0.03% (2)
be the - 0.03% (2)
the credits - 0.03% (2)
in one - 0.03% (2)
"amica paint" - 0.03% (2)
issue 55 - 0.03% (2)
rts the - 0.03% (2)
the checksum - 0.03% (2)
with its - 0.03% (2)
generic hack - 0.03% (2)
case reversed? - 0.03% (2)
program that - 0.03% (2)
system in - 0.03% (2)
petscii have - 0.03% (2)
why does - 0.03% (2)
that they - 0.03% (2)
a generic - 0.03% (2)
does not - 0.03% (2)
hack would - 0.03% (2)
system's getserialnumber - 0.03% (2)
comparison with - 0.03% (2)
instruction at - 0.03% (2)
ldy $dd - 0.03% (2)
implementation to - 0.03% (2)
match, the - 0.03% (2)
would change - 0.03% (2)
protected tampering - 0.03% (2)
used on - 0.03% (2)
it does - 0.03% (2)
.,d5f4 cd - 0.03% (2)
jsr $c1d8 - 0.03% (2)
.,d5ef 20 - 0.03% (2)
that supported - 0.03% (2)
store the - 0.03% (2)
of getserialnumber - 0.03% (2)
- $ff,y - 0.03% (2)
; compare - 0.03% (2)
the end - 0.03% (2)
into return - 0.03% (2)
; load - 0.03% (2)
preventing changing - 0.03% (2)
as well. - 0.03% (2)
geos kernal - 0.03% (2)
cmp $d82f - 0.03% (2)
by incrementing - 0.03% (2)
9, 2016 - 0.03% (2)
this code - 0.03% (2)
find, because - 0.03% (2)
because it - 0.03% (2)
to find, - 0.03% (2)
point to - 0.03% (2)
new code - 0.03% (2)
this: ; - 0.03% (2)
than the - 0.03% (2)
.,d5fc a0 - 0.03% (2)
c0 sta - 0.03% (2)
the vector - 0.03% (2)
the other - 0.03% (2)
through the - 0.03% (2)
sabotage the - 0.03% (2)
vector was - 0.03% (2)
00 ldy - 0.03% (2)
which uses - 0.03% (2)
commodore 8 - 0.03% (2)
is only - 0.03% (2)
there are - 0.03% (2)
the “slinky” - 0.03% (2)
was developed - 0.03% (2)
lucasfilm ltd. - 0.03% (2)
used to - 0.03% (2)
of geos, - 0.03% (2)
actually a - 0.03% (2)
uncategorized on - 0.03% (2)
lots of - 0.03% (2)
$c0-$df area - 0.03% (2)
case lower - 0.03% (2)
case upper - 0.03% (2)
petscii lower - 0.03% (2)
c1 jsr - 0.03% (2)
$60-$7f area - 0.03% (2)
application's binary. - 0.03% (2)
it was - 0.03% (2)
the uppercase - 0.03% (2)
text: byte - 0.03% (2)
was using - 0.03% (2)
to use - 0.03% (2)
followed by - 0.03% (2)
serial numbers. - 0.03% (2)
dd if=hello.bin - 0.03% (2)
it could - 0.03% (2)
16 bit - 0.03% (2)
easy to - 0.03% (2)
similar to - 0.03% (2)
stored it - 0.03% (2)
source files - 0.03% (2)
of macross - 0.03% (2)
to install - 0.03% (2)
may want - 0.03% (2)
for that - 0.03% (2)
the $c0-$df - 0.03% (2)
code of - 0.03% (2)
to ascii, - 0.03% (2)
key ascii - 0.03% (2)
pressing "a" - 0.03% (2)
($41) ♠ - 0.03% (2)
shift + - 0.03% (2)
$d5fc ; - 0.03% (2)
a ($61) - 0.03% (2)
keyboard pet - 0.03% (2)
c2 inc - 0.03% (2)
a lower - 0.03% (2)
$c218 ; - 0.03% (2)
the character - 0.03% (2)
sabotage lddeskacc - 0.03% (2)
support a - 0.03% (2)
vector .,d5fc - 0.03% (2)
ldy #$00 - 0.03% (2)
uppercase and - 0.03% (2)
unshifted produces - 0.03% (2)
case "a", - 0.03% (2)
$c1d8 ; - 0.03% (2)
($c1) a - 0.03% (2)
"a" still - 0.03% (2)
d8 cmp - 0.03% (2)
so commodore - 0.03% (2)
compare with - 0.03% (2)
a code - 0.03% (2)
still produces - 0.03% (2)
stored version - 0.03% (2)
and together - 0.03% (2)
character code - 0.03% (2)
to produce - 0.03% (2)
.,d5f7 f0 - 0.03% (2)
bit computers - 0.03% (2)
03 beq - 0.03% (2)
"a", and - 0.03% (2)
an uppercase - 0.03% (2)
1 reply - 0.03% (2)
this entry was - 0.16% (10)
by michael steil. - 0.16% (10)
was posted in - 0.16% (10)
entry was posted - 0.16% (10)
posted in 6502, - 0.1% (6)
as well as - 0.1% (6)
in 6502, archeology - 0.1% (6)
2016 by michael - 0.1% (6)
the getserialnumber vector - 0.08% (5)
case and lower - 0.08% (5)
│ │ │ - 0.08% (5)
lo byte of - 0.07% (4)
hi byte of - 0.07% (4)
kernel and initrd - 0.07% (4)
of the original - 0.07% (4)
the system call - 0.07% (4)
the commodore 64 - 0.07% (4)
2015 by michael - 0.07% (4)
the intel 8080 - 0.05% (3)
initializing cgroup subsys - 0.05% (3)
the kernel and - 0.05% (3)
if the hack - 0.05% (3)
to extract the - 0.05% (3)
the middle of - 0.05% (3)
here is a - 0.05% (3)
the exact same - 0.05% (3)
of the system - 0.05% (3)
game boy talk” - 0.05% (3)
the hi byte - 0.05% (3)
source of the - 0.05% (3)
byte of the - 0.05% (3)
the source of - 0.05% (3)
commodore decided to - 0.05% (3)
of the first - 0.05% (3)
the serial number - 0.05% (3)
on the commodore - 0.05% (3)
ultimate game boy - 0.05% (3)
6502 cross assembler - 0.05% (3)
system's serial number - 0.05% (3)
8080 simulation with - 0.03% (2)
tiny core linux - 0.03% (2)
simulator for the - 0.03% (2)
pencil and paper - 0.03% (2)
emulating the intel - 0.03% (2)
mif (isimmediatemode(operand)) { - 0.03% (2)
} melse { - 0.03% (2)
"hello world!", 0 - 0.03% (2)
followed by the - 0.03% (2)
byte "hello world!", - 0.03% (2)
used to create - 0.03% (2)
display on the - 0.03% (2)
may want to - 0.03% (2)
at the time - 0.03% (2)
talk” at 33c3 - 0.03% (2)
reverse-engineered geos 2.0 - 0.03% (2)
for c64 source - 0.03% (2)
amica paint protected - 0.03% (2)
a very powerful - 0.03% (2)
in uncategorized on - 0.03% (2)
petscii lower case - 0.03% (2)
a code of - 0.03% (2)
"a" still produces - 0.03% (2)
but it has - 0.03% (2)
still produces a - 0.03% (2)
a mos 6502 - 0.03% (2)
which is a - 0.03% (2)
for an obsolete - 0.03% (2)
a ($41) ♠ - 0.03% (2)
posted in uncategorized - 0.03% (2)
in the repository. - 0.03% (2)
$ sudo apt-get - 0.03% (2)
want to install - 0.03% (2)
the ground floor - 0.03% (2)
lounge of the - 0.03% (2)
then run the - 0.03% (2)
2" net="-s 2:0,virtio-net" - 0.03% (2)
maxwell dworkin building - 0.03% (2)
mem="-m 1g" #smp="-c - 0.03% (2)
to run the - 0.03% (2)
to the mac - 0.03% (2)
photos of the - 0.03% (2)
the wall of - 0.03% (2)
copy of the - 0.03% (2)
so you can - 0.03% (2)
posted in archeology - 0.03% (2)
run the script - 0.03% (2)
$img_hdd -f kexec,$kernel,$initrd,"$cmdline" - 0.03% (2)
$lpc_dev $net $img_cd - 0.03% (2)
$mem $smp $pci_dev - 0.03% (2)
lpc_dev="-l com1,stdio" build/xhyve - 0.03% (2)
0:0,hostbridge -s 31,lpc" - 0.03% (2)
img_hdd="-s 4,virtio-blk,ubuntu/hdd.img" pci_dev="-s - 0.03% (2)
#smp="-c 2" net="-s - 0.03% (2)
$ dd if=/dev/zero - 0.03% (2)
announcement: “the ultimate - 0.03% (2)
commodore 8 bit - 0.03% (2)
shift + a - 0.03% (2)
cmp $d82f ; - 0.03% (2)
the geos kernal - 0.03% (2)
change the getserialnumber - 0.03% (2)
getserialnumber vector was - 0.03% (2)
vector in the - 0.03% (2)
preventing changing the - 0.03% (2)
the system's getserialnumber - 0.03% (2)
hack would change - 0.03% (2)
the system in - 0.03% (2)
in the application's - 0.03% (2)
00 ldy #$00 - 0.03% (2)
vector .,d5fc a0 - 0.03% (2)
$c218 ; sabotage - 0.03% (2)
18 c2 inc - 0.03% (2)
03 beq $d5fc - 0.03% (2)
03 lda $03 - 0.03% (2)
in the middle - 0.03% (2)
and stored it - 0.03% (2)
if you are - 0.03% (2)
7, 2016 by - 0.03% (2)
geos 2.0 for - 0.03% (2)
c64 source code - 0.03% (2)
of the c64 - 0.03% (2)
traps in geos - 0.03% (2)
read the system's - 0.03% (2)
jsr $c1d8 ; - 0.03% (2)
serial number and - 0.03% (2)
stored it in - 0.03% (2)
the application's binary. - 0.03% (2)
it read the - 0.03% (2)
running on a - 0.03% (2)
copies of geos - 0.03% (2)
; into return - 0.03% (2)
it does this: - 0.03% (2)
ascii keyboard pet - 0.03% (2)
a ($61) a - 0.03% (2)
the credits message - 0.03% (2)
is the original - 0.03% (2)
60 rts the - 0.03% (2)
petscii have upper - 0.03% (2)
to ascii, but - 0.03% (2)
key ascii keyboard - 0.03% (2)
($41) shift + - 0.03% (2)
came with a - 0.03% (2)
a a ($41) - 0.03% (2)
unshifted produces a - 0.03% (2)
and together with - 0.03% (2)
pressing "a" unshifted - 0.03% (2)
produces an uppercase - 0.03% (2)
"a", and together - 0.03% (2)
in one of - 0.03% (2)
with its credits - 0.03% (2)
.,d5ef 20 d8 - 0.03% (2)
a0 00 ldy - 0.03% (2)
c1 jsr $c1d8 - 0.03% (2)
a5 03 lda - 0.03% (2)
$03 ; read - 0.03% (2)
2f d8 cmp - 0.03% (2)
$d82f ; compare - 0.03% (2)
f0 03 beq - 0.03% (2)
#$00 ; ... - 0.03% (2)
paint protected tampering - 0.03% (2)
a copy of - 0.03% (2)
system call vector - 0.03% (2)
the original implementation - 0.03% (2)
the code in - 0.03% (2)
sabotage would have - 0.03% (2)
to find, because - 0.03% (2)
tampering with its - 0.03% (2)

Here you can find chart of all your popular one, two and three word phrases. Google and others search engines means your page is about words you use frequently.

Copyright © 2015-2016 hupso.pl. All rights reserved. FB | +G | Twitter

Hupso.pl jest serwisem internetowym, w którym jednym kliknieciem możesz szybko i łatwo sprawdź stronę www pod kątem SEO. Oferujemy darmowe pozycjonowanie stron internetowych oraz wycena domen i stron internetowych. Prowadzimy ranking polskich stron internetowych oraz ranking stron alexa.