Main Menu
Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Topics - Vectrex32

#1
News and Updates / Firmware upgrade: version 1.29
July 01, 2023, 09:21:29 AM
There's a new release of the Vectrex32 firmware available, version 1.29. You can download it here.

A couple of version numbers were skipped from the previous release, 1.26.

There is a bug fix and a new feature, the FEOF() function.

- Bob
#2
News and Updates / Firmware upgrade: version 1.26
August 18, 2020, 09:35:31 PM
There's a new version of the Vectrex32 firmware available, version 1.26. You can download the firmware here.

There is a single bug fix, to the Val() function.

- Bob
#3
News and Updates / Firmware upgrade: version 1.25
July 30, 2020, 08:57:05 PM
There's a new version of the Vectrex32 firmware available, version 1.25. You can download the firmware here.

There are new features and bug fixes. See the release notes here.

- Bob
#4
News and Updates / Firmware upgrade: 1.24
June 15, 2020, 09:11:14 AM
There's a new version of the Vectrex32 firmware available, version 1.24. You can download the firmware here.

There are new features and bug fixes. See the release notes here.

- Bob
#5
News and Updates / Firmware upgrade: version 1.23
March 31, 2020, 02:49:42 PM
There's a new version of the Vectrex32 firmware available, version 1.23. If you already own Vectrex 1.10 or newer, you can download the firmware here. If you still have version 1.00, please read this.

There are a few new features and bug fixes but the most important change is that the Vectrex32 can now support much larger drawing lists. It does this by reusing the 2K dual-port RAM multiple times per frame.

- Bob
#6
News and Updates / Firmware upgrade: version 1.22
January 23, 2020, 10:19:57 AM
There's a new version of the Vectrex32 firmware available, version 1.22. If you already own Vectrex 1.10 or newer, you can download the firmware here. If you still have version 1.00, please read this.

This version adds support for C-like include files.

- Bob
#7
News and Updates / Firmware upgrade: version 1.21
December 30, 2019, 02:16:36 PM
There's a new version of the Vectrex32 firmware available, version 1.21. If you already own Vectrex 1.10 or newer, you can download the firmware here. If you still have version 1.00, please read this.

This version adds several new features and fixes a few bugs:

- Add run-time error handling with ON ERROR CALL
- Add 2.5D sprites, which are 2D sprites that can be positioned in the 3D world.
- Add binary file I/O with FRead and FWrite. Add random access with FSeek and FTell.
- Add byte arrays to support binary files.
- Add bitwise operators &, |, ^, and ~ (AND, OR, Exclusive OR, and Complement).
  WARNING: if you were using ^ for exponentiation, you need to change your code!
- Add the pow() function for exponentiation.
- Allow == for testing equality, since you can't teach an old C programmer new tricks. :-)
- Add SpriteGetUserData and SpriteSetUserData to allow a program to associate
  arbitrary data with a sprite
- Handle dual-port RAM overflows more gracefully.
- When re-DIMming an array, free the old array before allocating the new one. This
  is more memory efficient.

#8
News and Updates / Firmware upgrade: 1.20
October 11, 2019, 09:37:32 AM
There's a new version of the Vectrex32 firmware available, version 1.20. This adds several new features as well as dramatically speeding up BASIC execution:


  • Add C-like structs
  • Add matrix arithmetic: +, -, * (dot product) and / (by a scalar)
  • Add matrix functions: norm(), transpose(), cross() (for cross product)
  • Add ByRef keyword to specify when arguments should be passed to subroutines and functions by reference instead of by value.
  • Add atan2() function.
  • Add DeepCopy() function for copying arrays and structs

If you already own Vectrex 1.10 or newer, you can download the firmware here. If you still have version 1.00, please read this.
#9
General Discussion / Profiling a BASIC program
September 29, 2019, 08:39:49 PM
Let's say you want to profile your BASIC program, i.e. determine what lines of code it's spending most of its time on, perhaps to optimize it. Here's a technique I came up with.

From the terminal, I LOADed my program. I turned tracing on (TRON). Then, in the terminal program, I turned logging on (I use TeraTerm so I selected File -> Log. Note that by default, TeraTerm appends to the log file. You don't want that; you want it to create a new file. So uncheck the Append box.)

Then I ran my program. The line numbers were printed out as it executed and TeraTerm wrote them to the log file. The program also runs slower, but hopefully the results will still reflect the program's normal behavior. When I had run the program long enough, I hit Ctrl+C and turned off TeraTerm's logging.

Next, I opened the log file in Notepad++. It contains line numbers in square brackets. I did a Replace All, replacing "]" with "]\n", i.e. I added a line break after each number. For Notepad++ to recognize \n as a newline, you need to set the Search Mode to Extended in the Replace dialog.

Then I saved the file.

Next, I opened a bash window (I have Windows Subsystem for Linux on my PC). I ran the command:
sort teraterm.log | uniq -c | sort -r -n >profile.txt

This sorts the line numbers, then uniq counts how many times each line number occurs, then the second sort command sorts the file so the most-executed line number is at the top. profile.txt will contain a list of line numbers, with the number of times that line was executed, in order with the most-executed line on top. You can use that as a guide for optimizing your code.

Note that this tells you which line is executed the most, but it doesn't tell you which line consumes the most processor time. It's conceivable that a simple line of code is executed most often, but a more complex line of code consumes more time overall.

I apologize for the Windows-centric nature of my description, and the dependence on the Linux subsystem. There are certainly plenty of other ways to achieve the same results. If you profile your code with a different set of tools, please post a description here.

- Bob
#10
News and Updates / Firmware upgrade: version 1.19
September 27, 2019, 01:03:09 PM
There's a new version of the Vectrex32 firmware available, version 1.19. This is a really critical upgrade if you have 1.18; it fixes some serious bugs. If you have an earlier version, this is still an important upgrade because it gives you all the features that version 1.18 promised.

If you already own Vectrex 1.10 or newer, you can download the firmware here. If you still have version 1.00, please read this.
#11
News and Updates / Vectrex32s back in stock
May 27, 2019, 01:57:11 PM
As of May 27, 2019, Vectrex32s are back in stock. You can buy one here.
#12
News and Updates / Firmware upgrade: version 1.18
March 30, 2019, 10:51:39 AM
There's a new version of the Vectrex32 firmware available: version 1.18. This is mostly bug fixes and optimizations (including one important optimization that  greatly reduces flicker). If you already own Vectrex 1.10 or newer, you can download the firmware here. If you still have version 1.00, please read this.
#13
News and Updates / Vectrex32 discounted
November 16, 2018, 04:33:03 PM
From now through Cyber Monday (Nov. 26th, 2018) the Vectrex32 is $25 off! Buy it at https://vectrex32.com/buy/

- Bob
#14
News and Updates / MissileBreak OutVaders bug fix
October 17, 2018, 02:35:45 PM
User "Iwantgames:)" found a bug in MissileBreak OutVaders (MBOV). I've posted a fix over in the Game Swap forum.

- Bob
#15
Game Swap / MissileBreak OutVaders bug fix
October 17, 2018, 02:26:52 PM
User "Iwantgames:)" found a bug in MissileBreak OutVaders (MBOV). Here's a fix for it. Download MBOV.zip, unzip it, and copy it to your Vectrex32. MBOV requires Vectrex32 version 1.14 or newer.

Thank you, Iwantgames:), for finding this and letting me know about it.

- Bob
#16
News and Updates / New game: Vector Gunner
October 01, 2018, 08:44:41 PM
There's a new game in the Game Swap forum, Vector Gunner. It's a Tail Gunner clone written by jbaronp3.

jbaronp3 has won the first V Prize of $500. There's still one more V Prize outstanding.
#17
Game Swap / Vector Gunner: A Tail Gunner clone
October 01, 2018, 08:37:14 PM
Here's a Tail Gunner clone called Vector Gunner. It was written by jbaronp3 for the V Prize competition, which he won.

It requires version 1.15 or newer of the Vectrex32 firmware. If you have an older version, go to vectrex32.com/category/downloads to upgrade.

Download the attached file, unzip it, and copy VectorGunner.bas to your Vectrex32.

Here's a video demo: [youtube width=640]https://youtu.be/HPxl5bN7Gkc[/youtube]

#18
News and Updates / New game: Vecalabeth
September 29, 2018, 08:09:15 AM
There's a beta version of a clone of the old Akalabeth RPG game over in the Game Swap forum. Check it out.

Thank you to Pix for writing and posting this!
#19
News and Updates / Vectrex32s back in stock
August 05, 2018, 07:54:14 PM
I have 25 Vectrex32s in stock. You can buy one here.
#20
News and Updates / Firmware upgrade: version 1.17
August 05, 2018, 07:51:05 PM
There's a new version of the Vectrex32 firmware available: version 1.17. (Version 1.16 was never released.) Version 1.17 includes new features, optimizations, and bug fixes. If you already own Vectrex 1.10 or newer, you can download the firmware here. If you still have version 1.00, please read this.