There's a bug lurking in the VAL() function of most early implementations of Microsoft BASIC that has the power to corrupt your program. We demonstrate it on the Commodore 64 and VIC-20, but it's present on many other 6502-based machines, as well as Z80 and even 6809 computers as discovered by many helpful people on the internets. We then attempt to explain why the bug happens: it's the result of a kind of nasty hack using Microsoft BASIC's evaluation routine combined with the particular edge case when an overflow error occurs.
The VIC-20 Quick Reference Handbook by Jeff Daniels: https://jeffdaniels.itch.io/vic-20-qu...
Tool Kit: BASIC https://archive.org/details/Compute_s...
Allen Huffman's blog: https://subethasoftware.com/2023/08/1...
All the X-Tweets:
/ 1692238191720600008
/ 1692313328209559923
/ 1693074790855102861
/ 1692300818815283262
/ 1692368840569851958
Closing song lyrics "Call An Awesome Superhero" by Robin's son, aged 5.
To support 8-Bit Show And Tell:
Become a patron: / 8bitshowandtell
One-time donation: https://paypal.me/8BitShowAndTell
2nd channel: / @8-bitshowandtell247
Index:
0:00 A bit about VAL()
2:31 + Addition or Concatenation?
4:42 10 A=VAL("1E39"):REM SHOW BUG
7:53 The VIC-20: VAL(TI$)
11:45 Tool Kit: BASIC Explanation
13:40 About the Overflow Error? 39 digits
15:14 VAL() needs a null-terminated string
18:30 Machine Language Monitor time
22:22 Thanks to my patrons and X-Twitter pals!
Смотрите видео This Function Destroys Programs: MS-BASIC's VAL() онлайн, длительностью часов минут секунд в хорошем качестве, которое загружено на канал 8-Bit Show And Tell 01 Январь 1970. Делитесь ссылкой на видео в социальных сетях, чтобы ваши подписчики и друзья так же посмотрели это видео. Данный видеоклип посмотрели 47,245 раз и оно понравилось 2.1 тысяч посетителям.