7 ms·
Ralf Brown's Interrupt List
- W-Stool 4y agoI used this constantly back in the day - it was the Gold Standard. The real question is - whatever happened to Ralf Brown?
- userbinator 4y agoLooks like he's still working on other things: http://www.cs.cmu.edu/~ralf/ http://www.cs.cmu.edu/~ralf/
- deadlyllama 4y agoThis was gold back in the DOS days. Software interrupts were used as a system call interface, both to DOS but also to various drivers. Getting documentation was tricky; the Interrupt List brought it all together.
- gunishi 4y agoThey still are used as a system call interface to this day.
- xtracto 4y agoThat's the kind of info that I loved that was circulated at that time. I remember playing with TSRs and Mode-X. I made some stupid virus-like program and played extensively with graphics as well... Nowadays, I am sad it is not as easy to play with our hardware such as Mobile phones at the same level. I wish we could at least use C to interact at the hardware level with mobile phones. Shit, it was even possible to do it with the Nintendo DS (via devkitARM)
- hackyhacky 4y agoWhat a trip down memory lane. This was my bedtime reading when I was a kid. It was a great tool and endlessly fascinating. A part of me wishes DOS was still relevant.
- lockhouse 4y agoYou can do a surprising amount of "modern" computing in FreeDOS. https://arstechnica.com/information-technology/2021/07/dos-boot-ars-spends-a-day-working-in-freedos/ https://arstechnica.com/information-technology/2021/07/dos-b... It also makes a great boot loader for hobby OSes. Both Windows and Novell Netware worked in this way.
- mycall 4y agoCan FreeDOS IRQ into Windows 10 or API-level calls? That would be interesting.
- vetinari 4y agoYou probably meant int into windows syscalls. IRQs are hardware-generated interrupts, when hardware demands attention. And the syscall instruction, as the fast int replacement, is not recognized at all in real or vm86 modes. In the end, it depends on the environment that you use to run the FreeDOS, whether it forwards them or not. Note that windows does not provide binary compatibility at syscall level, only at ntdll level, which would be useless outside currently running windows, so it could be useless even if it was forwarded.
- xtracto 4y agoYou just brought me great memories of me and my dad setting up those hand-operated black and white logitech scanners. Having to connect custom ISA cards and manually configuring IRQ ports and DMA channels in the cards. Normally done through jumpers... and when we got a card with Dip Switches!! it was THE FUTURE. Great times!
- kjs3 4y agoThere's still a ton of DOS running embedded/industrial applications. Quite relevant.
- malkia 4y agoThat was the Bible back in the day - Turbo Pascal, inline assembly and gets lots of fun through the interrupt list.
- _0ffh 4y agoYeah one great thing about the TP's inline assembler was that you could write the first draft of for example a TSR program in Pascal and then translate it piecemeal into assembly until you could ditch the compiler completely and just use the TASM.
- malkia 4y agoYup, that was my experience - otherwise you end up paying some kb of runtime attached. - One of my TSR was to transform the 320x200x256 buffer from one game into hercules (640x200) mono (1bit) mode. For the Trolls game - it was super slow, but worked, and it was more enjoyable making the hack, than playing it. Another cool feature (back then) was this TSR which would let you save the state of the RAM running, and then save again and again, and by doing diffing you can find where certain game would keep life points, etc.
- _0ffh 4y agoLol, I did something similar. Not saving the whole RAM, but I made a TSR to first scan memory for an integer, which would create a list of all hits. I could then rescan as soon as the number changed (your character's hp for example), and it would just filter down the list from the first scan. Repeat until you're down to one hit, and you've got your candidate for a write operation! Actually worked on a couple of games... =)
- malkia 4y agoYup - it was also fun to find that some games were keeping the HP points as text - there was at least one, involving a ninja (but can't remember the name of the game). Oh, and that tool was someone else that wrote it, not me. But was quite popular in the PC clubs I was going to.
- nu11ptr 4y agoWow, what a blast from the past. I used this site so much. It was the bible of all things related to interrupts. I recall using this site when writing several TSRs. What fun that was and feeling a great sense of nostalgia.
- anyfoo 4y agoI remember it as ZIP files, that would extract into plaintext documents, but with a bespoke viewer program to quickly navigate...
- _0ffh 4y agoYeah, I used to get mine from the files section of a FidoNet BBS.
- animal531 4y agoBack in the day it was fun to create your own text reader application, it really caught on probably after someone in the demo scene did it first, then it became sort of its own little status symbol along with whatever demo effects you were doing.
- djmips 4y agoIt wasn't a site
- wruza 4y agoOhh, full on nostalgia. I remember stumbling upon it for the first time, it was a priceless treasure. It seems that someone converted it into NG format [1], because wiki only mentions raw text and diffs. NG was very useful since its reader stayed TSR so you could refer to it without leaving an editor. [1] https://en.wikipedia.org/wiki/Norton_Guides https://en.wikipedia.org/wiki/Norton_Guides
- mobilio 4y agoBack in time there was 2 very good examples of hypertexts - TurboPascal documentation and NG of course.
- ngneer 4y agoInfinitely Classic
- VectorLock 4y agoWhen I was programming in DOS way back in the day Ralf Brown's Interrupt List was THE bible.
- userbinator 4y agoSince October 1987 it is maintained by Ralf D. Brown,[23] a researcher at Carnegie Mellon University's Language Technologies Institute Language as in human languages, not computer languages --- and this is noteworthy because it's illustrative of how many in the PC software/hardware scene were back then; they didn't learn programming and the details of the PC architecture to become specialised career developers, but because they wanted to create software/hardware to serve some other purpose related to their actual work/personal life. Of course there were career developers, but there were also far more "power users" who "graduated" into programming too. For example, I remember interacting with a gardener who learned and wrote an application --- in x86 Asm --- because she wanted to make various calculations regarding the plants she was managing. Contrast that with these days where many low-level details are heavily guarded, there's plenty of people willing to sell you something close to what you want (and try to convince you that it is exactly what you want), users are strongly divided into "consumers" and "developers" and the former largely discouraged from learning about how things work, and the average career developer is completely clueless about what would traditionally be considered "power user" features, and might even struggle with basic concepts like a command line. The Internet is filled with plenty of information only a search away, but the majority of it isn't good.
- klodolph 4y agoIt's easy to feel nostalgic for the old days, but what really was better back then? Really, the only advantage you had back then is that you often had no other choices but to learn to program computers in order to use them. It's much easier to program computers today, and it's much easier to learn to program, but the only problem here is that you're faced with a hundred or a thousand different alternatives for how to learn to program, or how to solve your task in ways that don't involve learning to program. I like showing off the Apple II to younger programmers. You turn it on and immediately you start writing code. This had the benefit of immediacy, but it was worse in almost every other conceivable way. Basic was horrible and didn't let you do structured programming. It was easy to lose your program. It was hard to make changes and iterate. Easier to start, but much harder to develop mastery.
- 4y ago
- ggambetta 4y agoSo many great adventures started with mov ax, 13h; int 10h :_)
- aix1 4y ago256 colours... almost unimaginable. I still remember the CGA colour palette, ugh.
- enriquto 4y agoThe non-square 320x200 pixels. What a thing of beauty.
- deleted 4y ago[deleted]
- aix1 4y agoProbably doesn't matter too much for games, right?
- enriquto 4y agoNot at all. But I remember dearly my first 3D program (a rotating wireframe dodecahedron) was all stretched out. The screen coordinates had to be scaled by a factor like 6/5 or 5/4 before display.
- bzzzt 4y agoDepends on the game, it's difficult to draw a perfect circle with non-square pixels. It was possible to achieve 320x240 though, problem was you needed more than 64Kb of memory for that and couldn't get the graphics buffer in a linear memory layout.
- vetinari 4y agonot at all, almost all games ran in "mode x", which was 320x240, so it had square pixels. It could also double-buffer, unlike the standard mode 0x13.
- rollulus 4y agoHah, that brings back a lot of good memories. Also of the cold at the attic where my pc was. Got my copy via floppy disks, of course. It also reminded me of “TechHelp”, if my memory serves me well it could run as ISR and you could summon it with a hot key. Apparently someone has been awesome enough to convert the dos program into a website: http://www.techhelpmanual.com/ http://www.techhelpmanual.com/
- wiz21c 4y agoThere was, in french, "La Bible du PC". It was full of very technical information, over a thousand pages or so... But Ralf's one, sure, it was so useful when Internet didn't exist for us !
- peterfirefly 4y agoWas there a Minitel server with programming information such as Ralf Brown's list?
- wiz21c 4y agoMinitel was not in my country :-/
- peterfirefly 4y agoAh, I jumped to the obvious conclusion and landed badly. Sorry!
- Gordonjcp 4y agoI downloaded this off my mate's BBS back in the olden days, early-to-mid 90s maybe. I might well have an image of the SIMTEL CD it was on. I remember it being a .zip file a few hundred kB long that took a good ten minutes or so to download on the modem I'd borrowed.
- js8 4y agoThere was also Tech Info, I believe, which, although smaller, contained some information missing from the interrupt list.
- DeathArrow 4y agoIt was quite a fun time programming under DOS as a kid and working with interrupts from either assembler or dos.
- whizzter 4y agoOld favourite, really comprehensive and was immensely useful when I wrote my own dos-extender,etc back in the day.
- mrlonglong 4y agoI wonder what sort of horrors or Easter eggs we could wrinkle out by fuzz-testing these interrupt calls?
- fpanzer 4y agoMOV AH, 4Ch INT 21h
- Koshkin 4y agoThere was this ‘Help’ utility which could be made resident and which was very popular among programmers. Here’s its modern incarnation: https://helppc.netcore2k.net/topics https://helppc.netcore2k.net/topics