Last updated July 28, 2026
BSCALE scales blocks in place. Select any number of block references, give it a scale factor, and each one is scaled about its own insertion point rather than about a single common base point. That distinction is the whole reason the routine exists.
AutoCAD’s SCALE command works from one base point for the whole selection, so scaling forty door symbols at once moves thirty-nine of them: they grow and shift away from the one you based the operation on. BSCALE leaves every block exactly where it was and changes only its size. On a drawing where symbol scale needs adjusting after a change of plot scale, that is the difference between a two-second job and re-placing every symbol by hand.
The source is protected
Worth knowing before you download it. The file inside the archive is not readable AutoLISP. It opens with the line “AutoCAD PROTECTED LISP file” followed by encoded data — the author ran it through the protection tool that was available for AutoLISP at the time, which scrambles the source so it can be loaded but not read or edited.
Two practical consequences. You cannot inspect it before running it, so it goes into the same category as any other closed binary you choose to trust or not. And you cannot adapt it — if the behaviour is nearly what you want but not quite, there is nothing to edit. Everything on this page therefore comes from the original listing rather than from reading the code, and we have not invented prompts or options to fill the gap.
What the listing does record is useful and specific: it scales a number of blocks at a scale you specify, and each block is scaled with its base point at that block’s own insertion point.
Command reference
The file is bscale.lsp and the listing calls the routine BSCALE, so BSCALE is the command to try first. Because the source cannot be read, we cannot confirm that from the file itself — watch the command line as it loads, since most routines of this kind announce themselves.
How to load it
Unzip Bscale.zip and load bscale.lsp with APPLOAD, or add it to the Startup Suite. Protected LISP loads exactly like ordinary LISP; the protection only affects readability. Our AutoLISP guide covers loading.
Step-by-step usage
- Work on a copy of the drawing the first time. This is closed code that modifies geometry, which is reason enough on its own.
- Load the file and type BSCALE.
- Select the blocks and give it the scale factor when it asks. A factor of 2 doubles them, 0.5 halves them.
- Check a few insertion points afterwards against where they were. If they have not moved, it has done what it says.
Compatibility notes
The listing records it as working on AutoCAD 2019, which is the most recent release recorded against anything in this part of the library and suggests it has been used relatively recently.
What we cannot tell you is whether it will run on AutoCAD LT. Protected LISP hides which functions the code calls, so there is no way to check it for dialog boxes or Express Tools calls — the two things that rule a routine out on LT. LT 2024 and later run AutoLISP, so it may work; see what runs on AutoCAD LT for the general position. Trying it is the only way to find out.
If you would rather run something you can read, the same job can be done with a short routine of your own: step through a selection of block references and multiply the scale factors in each one, leaving the insertion point untouched.
Download
| Name: | BSCALE |
| Description: | Bscale.lsp is a lisp program that will allow you to scale a number of block at a scale that you specify. Each block will be scaled with a basepoint at the block’s insertion point. |
| Type: | AutoCAD AutoLISP Routine |
| Author: | Anon |
| File Size: | 3 Kb |
| Cost: | Free |
| Worked on: | AutoCAD 2019 |
| Download File: | Bscale.zip |
Related routines
- Block Count — find out how many blocks you are about to rescale.
- Fixblock — another block maintenance routine, and this one you can read.
- Auto Block Rename — bulk rename block definitions to a standard.