

A 1982 Commodore 64 web server, 64k RAM, 1 MHz CPU, running Contiki - tdrnd
http://c64web.com/

======
c64web
Due to the 1541 Floppy drive taking four seconds to display a page and hit's
coming in every second or so, It's not able to send a page before another is
requested. The C64 is still up and once the demand lessens web pages will be
displayed.

Shane. cbm8bit.com

------
michaelpinto
Kids today forget that actually kids back the day ran BBSs with C64s which
wasn't quite the internet but still pretty cool:
<http://blog.wfmu.org/freeform/2005/07/my_commodore_64.html>

I also have very fond memories of dialing up Quantum Link which eventually
became AOL: <http://en.wikipedia.org/wiki/Quantum_Link>

~~~
SwellJoe
The first real programming I did was writing games and mods for the Color64
BBS I ran when I was about 12. It was actually an interesting and modern
design, I now realize...its main loop was in assembly while the apps and forum
and other stuff was in BASIC, making it, effectively, a scriptable system
(live scriptable, even, since you could change things on the running system).
It was also a somewhat multi-user system, in that a sysop could interact with
users while they were on the system. The reason it wasn't all written in BASIC
was that BASIC wasn't fast enough to serve a 2400 baud connection (I believe
disk routines also had some reason for being in assembly, as well), much less
the 38,400 modems supported by Swiftlink.

That old C64, and the BBS culture, shaped me and my life profoundly. I should
probably send Greg Pfountz (the author of Color64) a nice thank you email, if
I can figure out how to reach him.

The source and manual for Color64 were released years ago, and the manual is
an interesting read in terms of understanding the architecture and seeing how
advanced a system could be on such a tiny machine.

~~~
linker3000
I wrote a full VT/ANSI BBS client for the C64 using 6502 assembler and it was
one of the fastest around. I never commercialised it, but it became something
of an underground hit in the UK at the time.

The software was noteworthy because it ran in graphics mode with its own set
of fonts and also (just about) managed to juggle printing AND still handling
the serial comms, which was made super-difficult by the way port interrupts
and I/O were handled on the C64.

------
zitterbewegung
Cache of the website from google.
[http://webcache.googleusercontent.com/search?q=cache:NI9QZ6s...](http://webcache.googleusercontent.com/search?q=cache:NI9QZ6sXecAJ:www.c64web.com/+http://c64web.com&cd=1&hl=en&ct=clnk&gl=us)

------
angrytapir
Shameless plug: I interviewed Contiki's creator Adam Dunkels recently -
[https://www.computerworld.com.au/article/438327/contiki_an_o...](https://www.computerworld.com.au/article/438327/contiki_an_operating_system_internet_things_/)

------
femto
I'm surprised that there isn't a league table of tiny web servers out there on
the Internet. Surely there's a subculture out there who are crazy enough to
make a hobby of eking the last little bit of performance out of a Z80, 6800 or
6502? Tightly optimised assembly loops and hand crafted packets competing for
the glory of surviving for the longest under a Slashdotting...

~~~
GigabyteCoin
It is tough for many hackers to get their hands on the machines you mention
there, but I could see something like that taking off with all the Raspberry
Pis that are being delivered as we speak.

~~~
fuzzix
The Pi is a veritable supercomputer when compared to, say, the Sinclair ZX81 -
A handful of kilobytes of RAM max, ~3MHz Z80 chip...

There is a ZX81-based web server public on the web, I won't link it here for
obvious reasons. (Search for "Siggis ZX81 web server" if you really wish to
see it.)

------
TazeTSchnitzel
Hackers love tiny web server devices.

Hackers are also great at overloading them.

~~~
DanBC
([http://www.csie.ntu.edu.tw/~fuh/fcourse/norton4/paper/Got%20...](http://www.csie.ntu.edu.tw/~fuh/fcourse/norton4/paper/Got%20a%20Match.htm))

> _It is based on the world's smallest implementation of a TCP/IP stack --
> which is implmented on a small 8-pin low-power microcontroller .. using a
> mere 512 words of program ROM. If IPic can fit in a PIC, it can fit in just
> about anything._

> _The TCP/IP code itself fits in about 256 bytes (12-bit), and the rest is
> some extra salt-and-pepper and miscellaneous code._

> _The chip is a PIC 12C509A, running at 4MHz (Internal RC clock)._

> _implementing the IPic tiny TCP/IP stack,_

> _a HTTP 1.0 compliant web-server,_

> _a simple telnet server (for editing files on the chip),_

> _an 24LC256 i2c EEPROM_

I think someone has done something smaller by now.

\--- EDIT

Here are some other tiny devices.

(<http://d116.com/ace/>) - "the webACE: a Fairchild ACE1101MT8 microcontroller
programmed as a Web server and containing two tiny web pages in its on-chip
memory. Since the ACE1101MT8 is the smallest available microcontroller, I
believe that this really is the World's Smallest Web Server."

(<http://www.magic-1.org/>) big, but home built CPU. "This web page is being
served by a completely home-built computer: Bill Buzbee's Magic-1 HomebrewCPU.
Magic-1 doesn't use an off-the-shelf CPU. Instead, its custom CPU is built out
of ~200 74 series TTL chips."

(<http://kl.net/atari/>) no longer serving pages, this was a web server on an
Atari 800

------
starik36
Allow me to pimp my own small web server, built in 25k of RAM on top of the
.NET Micro Framework. I put it in a robot so that I could control it from
Safari on my iPhone. The web server serves a JS-heavy page which sends REST-
like commands to the robot via Ajax.

Video: <http://www.youtube.com/watch?v=DtornTFcIfk>

------
lucb1e
Should I find it ironic that it's down?

~~~
adamgb
You would if you were Alanis Morissette. Otherwise, no.

~~~
Deestan
<http://en.wikipedia.org/wiki/Irony>

Dramatic Irony seems to fit.

> Dramatic irony is a disparity of awareness between actor and observer: when
> words and actions possess significance that the listener or audience
> understands, but the speaker or character does not, for example when a
> character says to another "I'll see you tomorrow!" when the audience (but
> not the character) knows that the character will die before morning.

"I set up a web server!" when the audience (but not the character) knows that
the web server will die before morning.

------
melling
IIRC, you got something like a 10%-20% speedup on the C64 by turning off the
video. Wonder if this setup has support for that?

~~~
weinzierl
If my memory serves me well this worked only with the PAL version of the C64.
Because the video chip (VIC) was so tightly coupled with the main processor
and RAM, the video refresh rate determined clock speed. The PAL C64 was
clocked at 0.98 MHz, the NTSC version was 1.25 MHz, so US C64's were faster
per se.

If you had a PAL version you could switch between both frequencies with a
switch soldered to some place on the board (or maybe it was the user port),
but of course you then lost video output as long as the switch was in the NTSC
position.

 _EDIT: Wikipedia says the NTSC version was only 1.023 MHz, so I remembered
that number incorrectly. Maybe you were referring to another trick that would
give you a 10%-20% speed increase?_

~~~
csixty4
The VIC-II "steals" CPU cycles every 8th scan line in order to load sprite &
color data, what C64 folks call "bad lines". It has a BA (Bus Available) pin
that's fed into the address decoder PLA. When BA is low, the PLA tells the CPU
that memory is only available for writing.

If you disable the VIC-II's output with a poke, it doesn't need any "bad
lines" to fetch data. The CPU then gets 25 scan lines' worth of time to crunch
data each screen refresh.

------
skreech
341000 visitors since January last year?

------
kapuzineralex
lol, "This webpage is not available"

~~~
tdrnd
It was going strong when I submitted the link, albeit a bit slow, but I would
guess the poor server is now taking quite a beating from being on the Hacker
News front page.

