7

Having been bored out of my brains the last few days off work sick, I decided to try and dig up some old code. I could find some binary versions of some ancient Atari ST stuff I wrote, but I couldn't find any source. I did manage to dredge up an old ModeX library I wrote in ASM many moons ago from an archive of the legendary old x2ftp site:

http://ftp.lanet.lv/ftp/mirror/x2ftp/msdos

Blast from the past :-)

; Actually Sticks Us Into ModeX - With 240 Scanlines Per Page
; Set The Variable LSCAN To The Virtual Scanline Length You Want
; Trashes AX, CX, DX, DS, SI
; Shouldn't Matter Though As This Should Be The First Thing You Call!
Set_X_240   PROC
        Call    Set_Graph       ; Set Mode 13h
        mov     dx, Seq_Port
        mov     ax, 00604h      ; Index 4 (Memory Mode Reg.) In AL
                                ; Bit 3 = Chain 4
        out     dx, ax          ; Kill Chain 4 Mode
        mov     ax, 00100h      ; Index 0 (Reset Reg.) In AL
        out     dx, ax          ; Reset Syncronous (At End Of Cycle)
        dec     dx              ; Change Port
        dec     dx              ; To Misc. S--t Port :)
        mov     al, 11100011b
        out     dx, al          ; Sets 480 Line Mode, 25Mhz Dot Clock
        inc     dx              ; Change Port
        inc     dx              ; Back To Sequencer Port
        mov     ax, 00300h
        out     dx, ax          ; Restart Controller
        mov     dx, Crtc_Port
        mov     al, 011h
        out     dx, al          ; Select Index 11h (Vert.Retrace End)
        inc     dx              ; Data Port
        in      al, dx          ; Read In Current Bit Mask
        and     al, 07Fh        ; 01111111 - Clear Top Bit (Write Protect)
        out     dx, al          ; Un-Write Protect Index 0-7 Of CRTC Reg.
        dec     dx              ; Restore Port To Index
        mov     ax, seg CRTC_Data_240           ; Address Of Our CRTC Data
        mov     ds, ax
        mov     si, offset CRTC_Data_240
        mov     cx, LCRTC_Data_240      ; Length Of Data
        repz    outsw                       ; Chuck It At The Port
        mov     ax, lscan
        shr     ax, 3           ; Number Of Words Per Scan Line
        mov     ah, al          ; Into AH
        mov     al, 013h        ; Port Index 013h - Logical Screen Width
        out     dx, ax

        mov     NScan, 240
    Call    Set_Pages
    ret
Set_X_240   ENDP

Anyone else want to make themselves look old and post some old school code? :-) It's a shame I don't have any of my 68000 ASM stuff still, although I probably wouldn't even recognise it now!

Ahh.. memories :-)

Michael
  • 7,348
  • 10
  • 49
  • 86
Steven Robbins
  • 26,441
  • 7
  • 76
  • 90
  • 2
    My personal axiom is this: If you can look at old code and not cringe, you aren't progressing as a programmer. – JohnFx Jan 30 '09 at 19:20
  • Well, I wouldn't say my old code makes me cringe.. apart from the unreal amount of comments.. but I don't think I'd write PutPixel quite the same way these days ;-) – Steven Robbins Jan 30 '09 at 19:22
  • I would post something but I don't have a cassette deck with a USB connector. – Dan Dyer Jan 31 '09 at 23:43
  • 1
    I feel kind of sad about voting to close this old question, especially as I do have [some nice old 68k assembly code](http://vyznev.net/misc/ResClock/) lying around, but it's pretty clearly [outside the scope of Stack Overflow](http://stackoverflow.com/help/dont-ask) today. I do hope that, even closed, we can maybe keep it around as a historical reminder of a time when SO was a more chatty and open-ended place. – Ilmari Karonen Oct 26 '15 at 23:34

7 Answers7

4

Have a boatload of old Atari 8-bit BASIC and Atari ST stuff from way back (I still have the ST, but it's not networked so I hardly ever use it).

I once typed in most of the games from David Ahl's "BASIC Computer Games: Microcomputer Edition", porting them to both the 8-bit and ST BASIC.

I am half-tempted to port those old games to Processing/Arduino, for old-school kicks.

Scott Prive
  • 801
  • 11
  • 16
3

I have a MUD I wrote and maintained during college, back in 1990-1993. All C. It was a derivation of Diku MUD called SillyMUD, and it was my pride and joy at the time.

You can still find the code on the Intertubes, here and there.

johnbr
  • 589
  • 3
  • 7
  • 1
    A friend and I played SillyMUD back in the day and recently decided to grab the source code and refurbish it as a hobby project: https://github.com/jonm/SillyMUD . Please drop us a note if you get a chance, Loki. :) – Jon Moore Dec 24 '15 at 18:19
2

Some absolutely terrible Perl code I wrote in 1998 is still in use on a certain website...

By terrible, I mean no use strict;, no mys anywhere in it...

Powerlord
  • 87,612
  • 17
  • 125
  • 175
1

Most of the code I had from the Atari ST was in GFA-Basic, I wouldn't want to touch those dusty floppies.

Osama Al-Maadeed
  • 5,654
  • 5
  • 28
  • 48
1

from an old EISPACK Fortran routine:

C     THIS SUBROUTINE IS A TRANSLATION OF THE ALGOL PROCEDURE ELMHES,
C     NUM. MATH. 12, 349-368(1968) BY MARTIN AND WILKINSON.
C     HANDBOOK FOR AUTO. COMP., VOL.II-LINEAR ALGEBRA, 339-358(1971).
C
C     GIVEN A REAL GENERAL MATRIX, THIS SUBROUTINE
C     REDUCES A SUBMATRIX SITUATED IN ROWS AND COLUMNS
C     LOW THROUGH HIGH TO UPPER HESSENBERG FORM BY
C     STABILIZED ELEMENTARY SIMILARITY TRANSFORMATIONS.
...
C     QUESTIONS AND COMMENTS SHOULD BE DIRECTED TO BURTON S. GARBOW,
C     MATHEMATICS AND COMPUTER SCIENCE DIV, ARGONNE NATIONAL LABORATORY
C
C     THIS VERSION DATED AUGUST 1983.
SumoRunner
  • 159
  • 1
  • 4
1

We have a test harness that was orginally written to run on Windows 3.1. While the veneer has been updated a lot, the guts are still the same. It still has some far/long pointer terminology in the core.

Steve Rowe
  • 19,411
  • 9
  • 51
  • 82
-2

Copy&paste as the core development strategy makes me very, very sad.

User
  • 30,403
  • 22
  • 79
  • 107