←back to thread

265 points colejohnson66 | 1 comments | | HN request time: 0s | source
Show context
deater ◴[] No.44424644[source]
I have to say as a 6502 assembly programmer I have wasted many hours of my life tracking down the same issue in my code (forgetting to put an # in front of an immediate value and thus accidentally doing a memory access instead). Often it's like this case too where things might accidentally work some of the time.

Worse than the floating-bus in this example is when it depends on uninitialized RAM which is often consistent based on DRAM so the code will always work on your machine/emulator but won't on someone else's machine with different DRAM chips (invariably you catch this at a demoparty when it won't run on the party machine and you only have 15 minutes to fix it before your demo is about to be presented)

replies(3): >>44425118 #>>44426179 #>>44426208 #
bartread ◴[] No.44426208[source]
This is the kind of situation where feeding your code through an LLM can actually be helpful: they're really good at spotting the kind of errors/typos like this that have a profound impact but which our eyes tend to all to easily scan over/past.
replies(2): >>44426310 #>>44429212 #
nancyminusone ◴[] No.44426310[source]
The last time I tried an LLM on assembly, it made up instructions that didn't exist.
replies(1): >>44426883 #
cdelsolar ◴[] No.44426883[source]
cool; nowadays LLMs are better
replies(2): >>44427383 #>>44428266 #
1. recursive ◴[] No.44428266{4}[source]
cool; but not better enough