Search found 244 matches

by julie_m
Sat Nov 28, 2020 10:45 pm
Forum: acorn & bbc micro user group (abug) events
Topic: Weeknight 'Virtual' Dev session #7, Thursday 26th November 2020, 7pm - 10pm
Replies: 20
Views: 337

Re: Weeknight 'Virtual' Dev session #7, Thursday 26th November 2020, 7pm - 10pm

Now, that's kind of handy!

It did set me thinking briefly about a complete adventure creation system, starting out in BASIC and gradually moving over to assembler until most of it is just PROCs and FNs calling machine code routines that implement drop-in replacements for the original BASIC .....
by julie_m
Sat Nov 28, 2020 9:52 pm
Forum: 8-bit acorn software: other
Topic: BCP: a BBC Micro printed circuit design program
Replies: 62
Views: 7931

Re: BCP: a BBC Micro printed circuit design program

I've just finished porting The BBC Native Buildable Version of BCP back to BeebAsm; and apart from a bit of bother with ORG statements, that I can take care of permanently with another quick bit of host-side scripting or just put up with having to do by hand, it just worked. I am now fully satisfied...
by julie_m
Sun Nov 22, 2020 1:59 pm
Forum: 8-bit acorn software: other
Topic: Why was BBC BASIC so fast?
Replies: 188
Views: 6711

Re: Why was BBC BASIC so fast?

How did Acorn ATOM BASIC handle its own, simpler "labels"?
by julie_m
Fri Nov 20, 2020 10:26 pm
Forum: 8-bit acorn software: other
Topic: Why was BBC BASIC so fast?
Replies: 188
Views: 6711

Re: Why was BBC BASIC so fast?

I noticed while in the course of probing into how BASIC stores its programs and variables that line numbers are stored "backwards" to how the 6502 usually stores multi-byte values. If you are sure you are comparing unsigned numbers, you can CMP the high byte first, but you don't have to store it fir...
by julie_m
Fri Nov 13, 2020 3:04 pm
Forum: 8-bit acorn software: classic games
Topic: Wizadore
Replies: 31
Views: 5574

Re: Wizadore

Ah, yes, "copy prevention" schemes that actually did nothing of the sort. The protection code cannot tell whether it is running from the original cassette or a verbatim (perhaps bandpass-filtered) audio copy; and if you start by dangling a 62256 off the address and data buses, you can just get your ...
by julie_m
Sun Nov 01, 2020 12:09 am
Forum: programming
Topic: Mode 6 Screen Memory
Replies: 11
Views: 551

Re: Mode 6 Screen Memory

The video system on the BBC Micro (which takes it in turns with the CPU to access RAM, in such a way as neither one even knows the other one is there) generates all its own addresses. Scrolling is achieved by starting drawing the screen from a different place in memory (so a line from lower down the...
by julie_m
Tue Oct 27, 2020 7:33 am
Forum: 8-bit acorn software: other
Topic: Why was BBC BASIC so fast?
Replies: 188
Views: 6711

Re: Why was BBC BASIC so fast?

MkSrc has also been useful a couple of times when I've foolishly overwritten my source code. Source code "KBD" saves object code "KBD", OOPS! Ouch! I feel your pain. If Dave Cutler had brought transparent file versioning -- surely the real killer feature of VAX/VMS -- over to Windows NT, it would h...
by julie_m
Mon Oct 26, 2020 2:35 am
Forum: 8-bit acorn software: other
Topic: Why was BBC BASIC so fast?
Replies: 188
Views: 6711

Re: Why was BBC BASIC so fast?

There is of course more than one way for BBC Basic to be fast: maybe it's faster with single-letter variable names? Maybe FOR would have been faster than REPEAT? Maybe it's fair game to use integer variables where applicable? BBC BASIC is fastest of all with the permanent variables A%-Z%, then with...
by julie_m
Sat Oct 24, 2020 12:05 pm
Forum: programming
Topic: Break from FOR loop in BASIC
Replies: 4
Views: 395

Re: Break from FOR loop in BASIC

In Assembler, I tend to JSR to the beginning of loops I might need to break out of prematurely, precisely in order to be able to accomplish that breaking out with little besides an RTS (perhaps a flag set or register load). The equivalent of this in BASIC would be to move your whole FOR loop into a ...
by julie_m
Sat Oct 24, 2020 11:46 am
Forum: 8-bit acorn software: other
Topic: Why was BBC BASIC so fast?
Replies: 188
Views: 6711

Re: Why was BBC BASIC so fast?

I don't mind the lack of spaces; I got so used to living without them, my brain tends to put them there for me. You can even miss out more spaces than you would normally ever get away with, if you use a slight hack: insert a token directly into your program, either by VDUing its token code to the sc...
by julie_m
Fri Oct 23, 2020 10:16 pm
Forum: 8-bit acorn software: other
Topic: Why was BBC BASIC so fast?
Replies: 188
Views: 6711

Re: Why was BBC BASIC so fast?

Indeed BBC BASIC is particularly slow in one regard: the way that GOTO and GOSUB find their destination line by a linear search starting at the beginning of the program every time Microsoft BASIC at least does the same thing (searching linearly that is -it does start from the current line if the de...
by julie_m
Mon Oct 12, 2020 9:39 pm
Forum: 8-bit acorn software: other
Topic: BCP: a BBC Micro printed circuit design program
Replies: 62
Views: 7931

Re: BCP: a BBC Micro printed circuit design program

And here is the utilities disc that goes with it. FP06 is a BASIC program which generates a footprints database from DATA statements in the program. (It was easier to get this working than a full-blown editor .....). Just run it and copy the command it produces. Footprint name is up to 7 characters,...
by julie_m
Thu Oct 08, 2020 10:20 pm
Forum: 8-bit acorn software: other
Topic: BCP: a BBC Micro printed circuit design program
Replies: 62
Views: 7931

Re: BCP: a BBC Micro printed circuit design program

Latest SSD image:
bbcpcb110.ssd
(21.75 KiB) Downloaded 8 times
Now has Load and Save commands. Also a tech preview of what will be OL, but accessed as Y.
by julie_m
Wed Oct 07, 2020 2:55 pm
Forum: 8-bit acorn software: other
Topic: Help, I want to REPEAT:UNTIL 0=?F%
Replies: 17
Views: 2307

Re: Help, I want to REPEAT:UNTIL 0=?F%

Putting the constant on the left-hand side of the = test is a common idiom in C-derived languages, to guard against accidentally redefining a variable you are trying to read the value of. This is because in C, Java, JavaScript, Perl &c., one = is "telling" and two == is "asking"; and if you use some...
by julie_m
Tue Oct 06, 2020 2:58 pm
Forum: 8-bit acorn hardware
Topic: Weird behaviour with simple BASIC program
Replies: 40
Views: 1542

Re: Weird behaviour with simple BASIC program

There's nothing wrong with using a Zener diode across the collector and emitter of a transistor which is being used to switch an inductive load; but it must have a PIV somewhere between the supply voltage and the PIV of the collector-base junction.
by julie_m
Sun Oct 04, 2020 9:17 pm
Forum: 8-bit acorn hardware
Topic: New Project
Replies: 7
Views: 443

Re: New Project

Well, I finally got my hands on some Servisol Super 10 and managed to get four out of five of the faulty key switches responding perfectly with just a good squirt and a few hundred cycles each. The last one needs a bit more attention; it's not an especially heavily-used position (top row 5 and %) so...
by julie_m
Fri Sep 18, 2020 2:43 pm
Forum: 8-bit acorn software: other
Topic: *DIR ^ on Master with ANFS 4.25
Replies: 5
Views: 432

Re: *DIR ^ on Master with ANFS 4.25

Not necessarily. With highly proprietary stuff, there may be "free" and "paid-for" client software, with the former having some of the latter's features deliberately nobbled. BitKeeper was an example of such (although Andrew Tridgell's Open Source client managed to outperform even the paid-for one).
by julie_m
Mon Sep 14, 2020 1:43 am
Forum: 8-bit acorn software: other
Topic: BCP: a BBC Micro printed circuit design program
Replies: 62
Views: 7931

Re: BCP: a BBC Micro printed circuit design program

I got stuck with the photoplotting stuff and ended up going on a wild tangent, rewriting the maths library (it now does multiplications in about half the time it used to, and divisions in something nearer a third than half the time it used to. Getting this to work required rearranging zero page loca...
by julie_m
Mon Sep 14, 2020 12:31 am
Forum: programming
Topic: Save Routine Modification
Replies: 6
Views: 384

Re: Save Routine Modification

That and all .....

This is why, when you ask a user to supply a filename, you should never, ever presume to know what is or is not a valid filename.
by julie_m
Wed Sep 09, 2020 10:33 pm
Forum: programming
Topic: Using a Mac or PC for BBC games authoring
Replies: 46
Views: 1988

Re: Using a Mac or PC for BBC games authoring

The most important tool you need for host-side development is a good text editor, because you will be using it. A lot. Ask six different people, and you will get twelve different answers. Try them all, and any more you can find; and whichever one you choose, be sure occasionally to have a play with ...
by julie_m
Sat Sep 05, 2020 3:17 pm
Forum: 8-bit acorn hardware
Topic: BBC B+/Master graphics upgrade?
Replies: 28
Views: 1565

Re: BBC B+/Master graphics upgrade?

If you were going to do 640*256*4 or 320*256*16, you really would need a framebuffer that looks as though it is composed of 20480 16-bit words of RAM. The circuitry is capable of sending 640 pixels to the screen on each scanline; it just can't read more than 80 bytes from memory in that time. But if...
by julie_m
Sat Sep 05, 2020 12:27 am
Forum: 8-bit acorn hardware
Topic: New Project
Replies: 7
Views: 443

New Project

I acquired this new toy today: IMG_20200904_231820_1280.jpg It is not quite as perfect as it looks; as explained by the seller, some of the keys are not working. However, the action on them is perfect, so they probably just need a squirt of Servisol and a bit of Micro Olympics to get them going agai...
by julie_m
Wed Sep 02, 2020 10:59 pm
Forum: programming
Topic: Two DEFPROCs, one ENDPROC?
Replies: 8
Views: 550

Re: Two DEFPROCs, one ENDPROC?

Well, it seems to work, behaves exactly as expected and does not do anything too crazy with the stack either (as shown by selecting a graphics mode and changing HIMEM to somewhere inside the framebuffer).
by julie_m
Wed Sep 02, 2020 9:38 pm
Forum: programming
Topic: Two DEFPROCs, one ENDPROC?
Replies: 8
Views: 550

Two DEFPROCs, one ENDPROC?

I think we've all seen assembler code like this: .add16 CLC .adc16 JSRadd16_1 .add16_1 LDAwkspace,X ADCwkspace,Y STAwkspace,X INX INY RTS with multiple entry points into the same code, so two JSRs can hit the same RTS. Can you do something similar in BASIC, with a DEFPROC between another DEFPROC and...
by julie_m
Sun Aug 30, 2020 6:21 pm
Forum: 8-bit acorn software: classic games
Topic: BBC Elite source, now fully documented and explained
Replies: 75
Views: 3885

Re: BBC Elite source, now fully documented and explained

Mmm, I'm sure there's some good stuff in there! I think I even have a use for the CRTC stunts they pulled .....
by julie_m
Sun Aug 30, 2020 4:08 pm
Forum: programming
Topic: Dumping BASIC variable names
Replies: 2
Views: 230

Re: Dumping BASIC variable names

See VList source code. I'm certainly not claiming any originality on this idea, and it would be disingenuous of me to pretend that the name jgharston did not crop up a few times while I was searching for information on how to do this! However, as a fan of doing things the hard way just for fun, I t...
by julie_m
Sat Aug 29, 2020 11:02 pm
Forum: programming
Topic: Dumping BASIC variable names
Replies: 2
Views: 230

Dumping BASIC variable names

Although I'm currently using BeebAsm for BCP development, and it's going very nicely, I do not want to abandon the idea of it being buildable on the target side. Otherwise, I am going to wind up with not so much a BBC Micro app, but a PC app that uses a special tool chain (BeebAsm and friends) and r...
by julie_m
Tue Aug 18, 2020 2:51 pm
Forum: 8-bit acorn software: classic games
Topic: Treasures hidden on sloppily mastered discs? (UIM again)
Replies: 14
Views: 1160

Re: Treasures hidden on sloppily mastered discs? (UIM again)

In case you need help with detokenising line numbers, this is how DFSbuster does it: Line numbers in a GOTO / GOSUB / RESTORE are tokenised according to a slightly weird scheme to ensure they don't clash with anything else that might look like a token; elsif ($code == 141) { # 141 = line number ($ln...
by julie_m
Fri Aug 14, 2020 2:46 pm
Forum: development tools
Topic: BeebAsm
Replies: 125
Views: 16286

Re: BeebAsm

^ This is caused by BeebEm trying to detect double-sided discs. It gets tripped up when sector 10 contains mostly ASCII data (i.e. values &20-&7F), as often happens in games that have instructions in their loader. Ah! That might go some way towards explaining some of my past BeebEm woes with disc i...

Go to advanced search