New answers tagged

2

As a former floppy disc repair technician, you can indeed do this, but you risk damaging the read-write heads and/or the alignment of the heads, rendering the drive unusable until it is repaired or replaced.


19

I did that all the time on the Apple II. The reason it worked was that some time was needed for the motor to spin up to the correct speed, and that the Disk II didn't really have an "eject" mechanism, but that you could very directly mechanically lift the read-write head from the surface of the disk. That meant that if you were quick enough to lift the ...


14

Theoretically, yes. The disk needs time to spin up to speed before reading or writing can occur. While it varies between platforms and drives, it's at least a couple hundred milliseconds. That's arguably just enough time to realize you shouldn't have hit enter, and to pop the drive latch. Especially if you subconsciously realize it before you even hit ...


4

The normal method of changing between the uppercase/graphics character set and the lowercase character set on the Commdore 128 is by printing the control characters, like so: PRINT CHR$(142):REM SELECT UPPERCASE, or, PRINT CHR$(14):REM SELECT LOWERCASE The same control characters will also work in your BASIC programs that use a bitmap screen mode and the ...


10

Florian Müller's Vom C64 zum C128: Tips & Tricks (available at https://www.retrozone.ch/c128/download.php) gives this command in section 3.7.2: POKE PEEK(45)+256*PEEK(46),1:DELETE 1


12

POKE 16418,0 is for the ZX81, not the Spectrum - the equivalent system variable on the Spectrum is at 23659. You need to take care when poking this address, as it's liable to cause a crash if the program exits (or displays a scroll? prompt) while the lower screen is disabled, but the following program demonstrates the principle: 10 POKE 23659,0 20 PRINT AT ...


5

I don't know about the normal printing routines in ZX Spectrum BASIC, but you can directly access the screen memory using POKE from BASIC. You'll need to work out where to get the 8 bytes of bitmap data comprising the character, then POKE them into the 8 bytes (on a 256-byte stride) corresponding to the desired character cell. According to this, the first ...


9

The most common way to do a general multiplication is the "shift and add" method, where for each bit set in the multiplier you add the multiplicand to the high portion of the result and then shift the result right. Thus, the lowest order bit of the multiplier, if set, contributes 1× the multiplicand to the result after the result has been fully shifted right,...


13

Multiplying (and dividing) by powers of 2 has always been trivial and fast even for 8-bit processors like Z80 or 6502, with shifting instructions (commonly arithmetic shift left aka ASL). But those processors didn't have a MUL instruction so when it came to non-power of 2 multiplication, it always involved shifting, testing bit and adding shifted result if ...


15

For Spectrum BASIC, the routine for Small Integers (16 bit) can be seen on page 179 of the Complete ZX Spectrum ROM Disassembly, where it loops over the sixteen bits of one operand, shifting them into the carry bit, adding successively doubling values to the result value each time the test passes, and testing for overflow if the result doesn't fit in a small ...


Top 50 recent answers are included