Log In  

(Wow ! Where did the cart go ?)

Because there are idiots in the world. Yep. And I have to write code so that they don't light firecrackers up their nose. SIGH I will return when this program is considerably safer.

(v07 11-08-22)

If you use this cart it is at your own risk cause it's not here for download now.


VVhat's new ?

  1. SAFETY OPTIONS, thanks to @freds72 and @scambier.

Hello there !

No, your eyes are not deceiving you. This is indeed NOT a Pico-8 game but a useful utility and one I had need of for quite some time now.

First off giving credit where credit is due, I am making use of @Heracleum's convenient picture to PRINT, especially since it's only 1-color and she is using ONE-OFF to do this. To make use of this utility yourself, go HERE:

https://www.lexaloffle.com/bbs/?tid=49901


Now what does this program do ? Just what it says. It is indeed a utility to help you compress files with 7zip. 7zip if you do not know is a standard and FREE utility to compress files. Some compression can be quite high especially files that are text only. It is also a standard practice to compress programs or games that exceed megabytes for storage.

Even a savings of 30% would be 300 megabytes for a 1 gigabyte file.

Here you can see the results of my utility and the file difference for DSK files. And most applications can read 7z and zip files directly without decompressing them so that's added hard-drive space in the long run when you're talking thousands of files.


Be aware as @freds72 stated AFTER I did, use this program at your own risk !

This program writes directly to your clipboard when you press CTRL+C. So your clipboard WILL change its data when you press CTRL+C !

If you want to be 100% safe, don't even open Dos Box and instead open notepad or some other text editor. In there press CTRL+V instead of right click to see the what got stuffed in your clipboard and you can see how my program works and how it compresses files and nothing will change on your computer - err - except the display in your note editor.

And only with brave heart, firm resolve, and nerves of steel should you EVER use this program in the way it was intended. Misuse of this program may lead to ranting and swearing and most importantly blaming others for your own mistakes. It's happened before.

Nonetheless, I will code this to not have the ending CR so you can see the commands before you commit to file changes.


Now with that caveat out of the way ...

If you don't have 7zip but still want to use this cart for compressing your files, that is also not a problem. You can either run this CART ONLINE or offline, it should work on both. Once the menu appears, select =1= and follow the directions there and you should be up and running with 7zip in no time.

With 7zip running, this cart will let you select one of the directories on your computer - and it doesn't need to be local to Pico-8.

In that directory you can select files or just those matching extensions with the option to checkmark individual files or all of them by pressing "A" - and then compress them with 7zip individually to their own single matching zip or 7z files.

To get started run the code and select option =2=

The rest of it is pretty self-explanatory. Basically it creates a kind of batch file through your clipboard that runs in CMD.EXE to do what you want - and of course you are welcome to examine the contents in NOTEPAD before you accept any changes. An early version of Windows was called, "DOS SHELL" and called CMD direct for its file changes.

It was pretty amazing what it could do because for the first time it introduced ALT-TAB between tasks, in this case, DOS tasks.

So what is DOS SHELL and CMD.EXE you might ask ? That is explained here:

https://en.wikipedia.org/wiki/DOS_Shell
https://en.wikipedia.org/wiki/Cmd.exe

While it does not delete any files it DOES give you a chance to MOVE any original files that were compressed to a custom directory of your design so they are out of the way of the newly compressed files.

I think the upper-visual limit is 1000 files as I am using a 3-digit display, although I'm pretty sure it can handle all the way up to 32000 file names even if it doesn't display their # correctly.

This will not be the only file utility I will write. I need others for different things, not just 7zip so I will use this engine base for that and notify you of any new tools i write.

Note: it is entirely possible to foul up the files on your computer if you go out of you way to do so. Please don't - and follow all prompts both in this description and in the cart. In all cases I do not claim responsibility.

Use this program at your own risk !

As always if you have any questions (especially ones not yet asked) or comments, feel free to enter them below.

Enjoy !

P#120326 2022-11-08 19:31 ( Edited 2022-11-09 02:21)

beside the dubious use, the cart presents a security risk as it embeds a carriage return in the clipboard, preventing review of the command before execution.

Kids: use this cart at your own risk

P#120337 2022-11-08 20:37

Alright, @freds72. You can read. I already stated earlier:

"Use this program at your own risk !"

I can certainly add that any time you save information to the clipboard you can review it in notepad if you want to see the magic behind the spell.

P#120338 2022-11-08 20:58 ( Edited 2022-11-08 23:13)
1

Is it that hard to just remove the last carriage return? "You can paste it in the clipboard" yeah and I can just use the normal 7zip interface instead of booting up pico8 and generating command lines.

Just don't generate commands that execute themselves, that is a security risk, and the least you can do when submitting this kind of stuff in a forum like this one. Putting up a disclaimer doesn't magically waive your responsibility, especially when the fix is dead simple.

P#120340 2022-11-08 21:06 ( Edited 2022-11-08 21:09)
1

oh, so this is not a 7zip compressor but a cart that creates a windows script to call 7zip ~

P#120341 2022-11-08 21:11
1

Already doing that, @scambier. I think @freds72 mentioned that before you.

Hi @merwok.

Yep, 7zip for some strange reason does not have this ability. It's a simple fix to remove the CR on the end.

P#120342 2022-11-08 21:22

We're not asking for a disclaimer (though that's also nice), we'd like you to remove the last carriage return so that the command does not execute itself when pasted in a terminal. Thank you.

(Edit: no need to @ me too, I don't need an email notification for each message 👍)

P#120343 2022-11-08 21:28 ( Edited 2022-11-08 21:30)

scambier: THE LAST CR IS BEING REMOVED AS YOU JUST NOW TYPED YOUR 2nd MESSAGE to request it - just as freds72 did earlier and just as you requested - again.

Pretty sure I heard you guys the first 3 times. :D

(edit - I'm working on some other safety additions besides)

P#120344 2022-11-08 21:38 ( Edited 2022-11-08 21:59)
1

Alright, guys. See if that isn't any better.

Am I cross. A little. Why ? Well I'm always doing pretty original things in coding. I will tell you now if that CMD.exe stuff scares you - you might want to avoid 90% of the Freeware file-managing programs that are out there for Windows 10 as they heavily make use of it, and often (or so they think), it's invisible.

But I can see it in my process manager. DOS SHELL just clicks up for a half a second and then vanishes. Shows up as a black box with the text, "cmd.exe"

Sometime back in Pico-8 I made the ability to have 24-bit graphics for the .PNG cart itself - first words out of people's mouths, that was a security risk.

So, yeah, I get used to hearing that after a-while, especially if I'm coding something really unique and original, not just in Pico-8 but other programming languages.

I - apologize for venting but there you have it. The community that know me in here know I really don't post anything unless it's something I'm super excited about.

And at the moment this is pretty exciting stuff for me. Being able to write Pico-8 script handlers for outside file handling, not just 7zip but other tools.

Anyways, your fears this time are founded ones. I have changed the code in all instants where it shows the entire script first.

If you like the script, press ENTER as normal, if not, press CTRL+C to abort.

Thanks, Freds72 and Scambier for bringing this to my attention.

. . .

Anyways with all the negative comments I've received so far, I'm certain my brainchild project here will be completely treated unfavorably now so - good job for that. And thanks for the =1= person who could see my vision here.

I suppose I could do what I've seen other coders do from here ...

I'll leave this cart up a few days, to see if there is any further interest, or more importantly, bugs to be found, before I go that route.

P#120345 2022-11-08 22:19 ( Edited 2022-11-08 22:54)
1

Woah that's way more than one could expect rather than a simple mention in the credits 😅 even too much! Thanks!
Good stuff 👍

P#120353 2022-11-09 01:49
1

You are more than welcome, @Heracleum. Your program was just peachy perfect for what I needed ...

I'm still pretty miffed about ... well ... I can see there are some safety issues. I basically wrote it for myself as I needed it, and thought it would be cool to share with others.

Yet there are idiots out there.

I mean if you are a complete idiot you can really foul things up, like if you decide to 7zip starting at c:\windows and then attempt to move those system files to a new directory and then wonder why your computer crashes -

so for now I'm retracting the cart.

Because there are idiots out there. Too many to count. Too many looking for lawsuits. Requiring manufacturers to turn normally safe products into something that is 100% moron friendly.

When it returns it will be quite a bit better though with major safety issues installed and NO way to damage your computer at all. I'll see to that.

Basically your average tricycle with 100 training wheels on it. Story of my life in coding, really.

Yet in all this - just maybe - I'll poke some fun at the naysayers directly in my new code - who hate everything I do, especially if it's something unique, original, and groundbreaking ...

Hmm ... I'm thinking a spinning red light.

Hope to see you there ! :)

P#120354 2022-11-09 02:03 ( Edited 2022-11-09 21:20)
1

May I ask, you said you wrote this because you needed it. Did you write it in PICO-8 because you're most familiar with PICO-8, or just wanted to see if it could be done?

It would be easier and safer to write a tool like this in a language like Python. A Python library like questionary could reproduce your prompt and file selection menus, and you could use Python's built-in subprocess module to call 7zip. It would be easy to build in other safety checks and ergonomic features to meet the expectations of a command-line tool, because that's what Python is for. For example, you can use shutil.which() to determine if 7zip is on the call path, or glob to expand those filename patterns.

As a PICO-8 tool, it's a cute hack, but as you're noticing, maybe too cute. Any bug in generating the copy-pasted commands could do a lot of damage. A Python script would also be calling shell commands, but could be made to automatically quote arguments (which subprocess does if you call it correctly), so that the worst it can do is call 7zip incorrectly and fail.

You could even use the py7zr library and perform 7zip and Zip functions without invoking another command line tool at all.

P#120363 2022-11-09 05:27
7

> Yet there are idiots out there. (...) I mean if you are a complete idiot (...) 100% moron friendly (...) your average tricycle with 100 training wheels on it

There's seriously no need to be condescending when asked to add the most basic safety measure to a tool generating potentially destructive commands through string concatenation. Especially with this forum's audience, mainly composed of programming amateurs and kids.

You can disregard security and safety for your tools, but not for the ones you publish publicly.

A bit of humility is usually appreciated, too. Going on a rant and insulting people like some underappreciated genius because someone pointed a potential risk in your product doesn't make you look good.

P#120387 2022-11-09 18:03
2

hi @dddaaannn:

Why do I feel like I'm on trial here ?

Look, I am using Pico-8 because it is convenient in that when you press CTRL+R to run your code is already running even before my finger leaves the CTRL key.

I like that. A lot. I'm not a great programmer and a bit like a squirrel I write a bit of code, run it, write a bit, run it, etc.

I can program in Pico-8 without ever having to pick up the accursed mouse except for graphics, and that's okay although Pico-8 can definitely do without the mouse for coding input. I wrote Tilemaster years ago and it's keyboard only, I use it every day for working on Pico-8 graphics.

I'm drawn to BASIC like languages because I really don't understand, not really, object-oriented code. Or putting arrays inside arrays.

I program in two languages these days. I used to program in three.

One of which is Blitz, which is fine but the whole community has died out. It's a good programming language for graphics and sound.

The other is GFA where the founder actually died and the group I was in disbanded. GFA today also only runs in Windows XP and computers before, not Windows 10.

So unless this Python has its own IDE where I can type code and run it immediately, I won't be looking at it.

Further Python code doesn't even run properly on my computer. I keep getting errors when I try to run other codes.

So Python is out at least until I can figure out what the problem is. And yes I have the latest version downloaded.

In Pico-8 I can type:

cls()
?"hello world."

That means a lot to me. It has flip() and goto() and while I sometimes sorta use _update() for tools such as the one I wrote above, I revert back to my old coding ways.

And yes I wrote it in Pico-8 cause I am most familiar with Pico-8. And yes I did need the tool.

Another useful tool would be something like this. Let's say you have 100+ directories that each only contain 1-file. This sort of thing can happen.

So another useful file utility I could write would take all 100+ directories, go inside each of them, take out their contents and put it in a single custom directory.

I don't know of any utilities that access 7zip the way I was above nor file access like the way I just described.

I write stuff cause it's not out there. I seldom try to duplicate existing code or game ideas unless it's something I can teach coding in like when I had my Applecart series.

https://www.lexaloffle.com/bbs/?tid=36400

If you get down to it, I've only written a handful of video-games in Pico-8 and a whole lot more brain toys and functions and tools to help others code in Pico-8.

Virtual Deck Cards.
Why ? The program never existed before and I like messing with playing cards.
https://www.lexaloffle.com/bbs/?pid=112489

Janitor.
Why ? This was an original LORES game I wrote for Apple ][ when I was 12-yo. Fond memories.
https://www.lexaloffle.com/bbs/?pid=100234

Applecart: 3-D Space Dock
Why ? It is part of the Applecart educational series to teach coding to beginners.
https://www.lexaloffle.com/bbs/?pid=72243

Applecart: Star Wars
Why ? It is part of the Applecart educational series to teach coding to beginners.
https://www.lexaloffle.com/bbs/?pid=72112

Applecart: Bomber
Why ? It is part of the Applecart educational series to teach coding to beginners.
https://www.lexaloffle.com/bbs/?pid=71883

Applecart: Saucer Attack
Why ? It is part of the Applecart educational series to teach coding to beginners.
It is also the first time I wrote a game by merely reading a text description.
https://www.lexaloffle.com/bbs/?pid=71787#p

Applecart: Saucer Invasion
Why ? It is part of the Applecart educational series to teach coding to beginners.
https://www.lexaloffle.com/bbs/?tid=36472

Pico-8 Roadway
Why ? This is the very first Pico-8 game I wrote that was designed for 2-players.
https://www.lexaloffle.com/bbs/?pid=70263

The Dead Should Die
Why ? It was Halloween and I wanted to write a tribute to Little Nightmares.
https://www.lexaloffle.com/bbs/?pid=67442

Helicopter
Why ? There were too many one-button gravity games. This one introduces horizontal gliding.
https://www.lexaloffle.com/bbs/?pid=57988

Glitterific
Why ? I'm actually very fond of glitter. And I wanted to code this for kids to play.
https://www.lexaloffle.com/bbs/?pid=58875

Mildew's Manor
Why ? It was Halloween and I wanted to show a unique effect with poke().
https://www.lexaloffle.com/bbs/?pid=55546

What have I brought to the community since I arrived 6-years ago ?

  1. A program to demonstrate 1-bit images stored in the spritesheet.
  2. A scrolling field with stable sprites, like Final Fantasy 1 for the NES.
  3. Code to detect finger swipes on cellphone. Swipe up, down, left, right.
  4. Maze generation code in very small source.
  5. Fireworks demo to introduce LISTS. (6-years ago)
  6. Map scroller to show entire 256x256 area of screen.
  7. Invader maker. Random numbers create intelligently designed sprites.
  8. TRX, which then does a lot of what P8SCII does today.
  9. Input function that overlays visual keyboard. Access through mouse or joystick.
  10. Image compression. I've actually written many different versions of this.
  11. Fireball. My first code to introduce the entire screen as a living OBJECT.
  12. Smart proportionally spaced text read from spritesheet.
  13. SRAM smasher. Compresses 256-byte of CARTDATA().
  14. Simple 3x6 pixel font showing the visual importance of 1-vertical pixel.
  15. Piano plus. A full music editor with ability to read/write from clipboard and SRAM.
  16. Wrote a full mapper editor that could work with up to 256x256 tiles.
  17. Wrote parallax graphic example. (4-years ago)
  18. Wrote many keyboard/joystick/mouse input routines.
  19. Wrote smart cavern maker. Demonstrate random plotting and pathfinding.
  20. Wrote full book reader w proportional font and smart spacing.
  21. Static display functions. Draw sprites on screen unaffected by background.
  22. Functions to help coders write platformers. Gravity. Acceleration. Friction.
  23. Introduction on how to load/save 8192-bytes of SRAM. Break 256-byte barrier.
  24. Introduced 128x128 pictures that had 16-colors from choice of 32.
  25. File tool to remove TABS from your own Pico-8 code.
  26. Very complete "Build your own website in Pico-8". Exports HTML.
  27. XOR Flower. Introduce Xplotting of pixels.
  28. Implosion pixel function. Instead of blowing pixels out they are blown in.
  29. Show example of YIELD in Fireball I wrote. Demonstrate interrupt system.
  30. Convert source-code multi-line string to MAP. Larger visual area.
  31. Convert MAP of any cart to single BBS image via [ gfx ].
  32. Up to 256 switches available per sprite for your coding. Not posted.
  33. Functions to count much larger than 32767 or lower than -32768.
  34. Functions to draw sprites without using SPR() or SSPR().
  35. Function to do system interrupt and show actual position running in code.
  36. Nine-keys. An input method I designed for small screen cellphones.
  37. A simple technique to show dither screen clearing. Thanks to @Megus for pattern.
  38. A full scrolling map demo with maze generation. Huge area to explore.
  39. Bunnies, Foxes, and Grass. Code I wrote to show evolution in object behavior.
  40. Demo code to show uses of palette for making objects glow and animate.
  41. Many versions, compression+Dither draw 128x128 B&W pictures in <1500 bytes.
  42. True 3D stars warp around edges of screen to give unique depth.
  43. Christmas card w unique snowfall method, 3D card opening, music by @Gruber.
  44. Write demo music w my Piano+ Christmas Bells using functions to play it.
  45. Introduce true 32-color fade image in and fade image out.
  46. Introduce circle opening and close of screen without affecting pixels behind it.
  47. Component snow. Where each particle is an object until impact.
  48. Metal Gear Solid tribute. The whole story with animation and sound.
  49. Map compression. Does not use MAP() area. Instead I provide all new functions.
  50. Introduction of true 32-color non-flicker pictures. I used the picture of a girl.
  51. Fantasy Console within Fantasy Console. New method for color hiearchy.
  52. Introduce saving and loading of 12288 bytes of SRAM. That's the maximum, folks.
  53. Full + - * / calculator counts up to 99,999,999 and down to -99,999,999
  54. I write the very first (and only) function to display 256-colors in Pico-8.
  55. Wrote a one-off editor and saver in 441-chars.
  56. I write the very first (and only) functions to play WAV and OGG files in Pico-8.
  57. Program to examine and view the files in your local drive.
  58. Function to easily generate shadows for any sprites at 178-chars.
  59. My take on torchlit view using dithering from smaller sprite image.
  60. Field Of View depending upon which direction the target is facing.
  61. Most robust FILLP() pattern editor with all the trimmings.
  62. Function to convert a string to true 32-color picture. No flicker.
  63. Demo code introduces Line Of Sight where you are not seen behind obstacles.
  64. Function to handle all options needed in Dialog Windows.
  65. Method to pseudo-rotate objects in a sphere, like the Earth.
  66. 1-player turn-based blockade to show intelligence of enemy.
  67. MyStar is a very unique method of pathfinding, far simpler than AStar.
  68. Function allows text input still allowing execution of main code unhindered.
  69. Input read routine that reads all keystrokes, SHIFT, ALT, Caps Lock, etc.
  70. Code that lets you use Pico-8's own editor to edit sprites in your custom colors.
  71. Tutorial on how to save 128x128 logo for your cart without including logo code.
  72. File tool to remove extraneous spaces from the end of your Pico-8 cart.
  73. Convert Spritesheet to true Pico-8's custom font.
  74. Showed a method of drawing triangles without using a slow pixel-by-pixel-fill.
  75. Wrote an input routine very much like entering text in home telephones. Fast.
  76. Coded complex maze using only 4- 8x8 pixel sprites dropped randomly on screen.

So I think I've brought a bit to the table not even counting the number of suggestions I've made for Pico-8 that ZEP did in fact invoke.

And BOTTOM LINE I'm not leaving Pico-8 and those of you who insist I do, just quit it ! Surely you can see above I invest time and effort into Pico-8. I'm not just leaving it cause you don't like me.

. . .

SIGH

Regarding writing "dangerous" code I think Captain Kirk said it best, and I'll change the wording from galactic meaning to programming definition.

They used to say, if man could fly, he'd have wings. But he did fly, he discovered he had to.

Do you wish that the first programming language did not have arrays ? or that self-modifying code had never been discovered ?

You (the community) are right in pointing out the enormous danger potential in any contact with new programmers and new methods, as fantastically advanced as some can be.

But I must point out that the possibilities, the potential for knowledge and advancement is equally great !

Risk.

Risk is our business if we want to advance in our knowledge of programming and design.

That's what this Piconian community is all about. It's not just about videogames. It's about learning new methods that not only change our code but our thinking as well !

That's why we're aboard her. That's why we come to this website day in and day out. New knowledge, on the daily !

. . .

So quite simply, I don't color within the lines, I don't avoid stepping on cracks in the sidewalk, and I put cereal box covers on my wall for decoration. I'm different. I'm not you. I never will be. I wouldn't even want to try.

No, seriously. imagine the complexity. And code the impossible. For the future of computers in not in their hands, it never was. It's in YOURS. And there will be dangers. No great treasure is worth earning if there isn't. And the same it is with me.

Lewis Carrol's Alice in Wonderland, one of the many fanciful figures she met in there said, "Sometimes I've believed as many as six impossible things before breakfast."

Sometimes I write code that is not 100% idiot proof. Sometimes I just enjoy the mental challenge of breaking a programming language's limits. To work outside the box. To shake hands with shadows and dance with the ghosts.

So sometimes I take that statement to heart, about doing the impossible. Sometimes I write code outside the norm that can be risky if someone deliberately misused it. It's not something I anticipate, but with this community, "Savoir Faire." I see that now.

I will work on this code to handle external files. It will be 100% safe when it is reposted, I can do that much. I wish I didn't because that's more coding on my part, but as stated in stone:

"There will be idiots."

Yet when I return I hope to have something wonderful, amazing, and quite useful for everyone.

I'll leave you with this parting thought:

“People think it must be fun to be a super genius, but they don't realize how hard it is to put up with all the idiots in the world.” ― Bill Watterson, The Calvin And Hobbes: Tenth Anniversary Book

Oh, and @scambier. Humility, I =DON'T= have. Not when it comes to programming. I'm quite proud of what I write and invent. I imagine everyone is proud of their accomplishments. And I am not apologizing for the idiotic actions of others.

Now I do apologize for going on a bender however I feel 100% justified. I was really proud of this code and was hoping for a bunch of positive feedback especially as it opens new doors to file access. Yet I did not name a single person in my vent.

I stated it in general, those people who WOULD get hurt by my code because they deliberately attempt to use it the wrong way knowing it will break something. THEY are the idiots. No-one else.

So no, I will not bend or yield to you. It was a good try though. Nonetheless I will continue as I have before yesterday. To stick within the frame of Pico-8 code and tutorials and help others and encourage them when I can, as I have for years now.

I'm certainly glad you took valuable time out of your own schedule today to do the same. :)

I am also saving this entire thread to my HD, not just this message, as I feel it will be valuable later. Accidents will happen.

P#120388 2022-11-09 20:23 ( Edited 2022-11-09 21:18)
3

👍

P#120397 2022-11-09 21:17
4

I only mentioned Python because I think you’d like it, and it’s a better choice for this kind of thing. Especially for odd file operations like pulling files out of a hundred subdirectories, it can do that in a couple of lines. Lua itself isn’t too bad either, and naturally the skills transfer between PICO-8 and full Lua.

P#120404 2022-11-09 22:49

Hi @dddaaannn.

I see the kindness in your words ...

If you can get my Python to work, that's fine. I fought it for weeks months ago and finally gave up on it.

Failing that I am only left to two coding alternatives.

P#120427 2022-11-10 04:09
2

@dw817 That was... one heck of a monologue. Bravo, sir! I just wanted to say that if it weren't for some of your suggestions, I wouldn't be as far along in my learning as I am now. Thank you for all your contributions, both to myself as well as to the community. Just remember, you must always be vigilant: There are some out there who would fail a litmus test with flying colors...

P#120433 2022-11-10 07:12 ( Edited 2022-11-10 07:12)
1

Hi @Turbochop:

That is - very kind of you to say so. Especially in my moment of bad temper.

And this is not the first time this happened. In a different community. I found a way of playing MIDI files back in Blitz years ago using the MCI driver.

https://en.wikipedia.org/wiki/Media_Control_Interface

At the time it was considered - well the words they used were "improper" and "dangerous."

That I should be content with WAV and OGG which is internal to the programming language and try not to turn Blitz into something it was never intended for.

Years before that I was reprimanded in QBasic for writing self-modifying code using a batch to modify the direct source. The words they used were "unethical programming."

So there will always be people wearing horse blinders who refuse to see what a wonderful world coding can be - especially if you step OUT of what has already been taught.

And start teaching others about what was NOT said about the programming language - about cool tips, magic tricks, and amazing code.

At no point in my programming, starting from age 8 have I ever wanted to damage anyone's computer. I have been known to experiment and dabble, however, much like a sorcerer over his boiling cauldron.

But truly nothing is foolproof.

I remember someone set up a kiosk of videogames they were selling for the IBM-pc. They only had the mouse active and no keyboard plugged in.

He way away and I was trying it out. When it came time to save my game data, in the standard filebox I quickly went to the system directory and right-clicking brought up an EXPLORER window. Then used the mouse to bring up the OSK which was a visual on-screen keyboard for the handicapped.

By the time he got back I was looking directly in his QBasic source-code of his games and commenting on how badly it was written.

He was furious - but relented that he needed better security if it was so easy for me to hack into his system.

Back when DOS was king I remember my computer instructor told us to write a program to count the number of words in a sentence in Turbo Pascal.

While others slaved over their code I finished in record time.

The sentence I chose was, "Not everything is as it seems."

The result came back, 6.

My instructor was pleased at how quickly I wrote what was needed - until he looked at my code and then he was furious !

For I simply read each character in the string, looking and tallying each space (#32) that was found. And when I was done I returned the result +1.

He gave me a C+ for being a smart-ass but I think I should've gotten a higher grade for innovative thinking.

I've gone through this all my life. I don't code like other people. I don't play the piano like other people. And I certainly don't go through life - like other people.

I'm always testing the waters even though I'm wearing leather shoes ... and I'm not about to change.

And I do get very excited and even emotional when I'm doing something that no-one else has ever done before, whether it's coding or life implementations.

I really do appreciate your encouraging words of support, Turbochop, sincerely ...

Thank you so much.

P#120448 2022-11-10 18:00 ( Edited 2022-11-10 18:05)

emotional journey in a random thread. fricking awesome

P#120491 2022-11-11 19:06

You never know what the web will turn up, @Tatery1. :)

As Turbochop said, we must all be vigilant.

P#120492 2022-11-11 19:10

Hello guys. Ive read the beginning of your discussion and I'm very confused. What is a carriage return and how is it dangerous for the system?

P#120631 2022-11-13 21:27

Hi @collinthenewmaker.

That is the ENTER key. Now you know. And knowing is half the battle.

P#120632 2022-11-13 21:39 ( Edited 2022-11-13 21:40)

Great. How is it dangerous?

P#120633 2022-11-13 21:40

It is dangerous as it automatically presses enter for a command. For instance, suppose you are in immediate mode in Pico-8 and you type out:

?1+2

You will not get an answer until you press CR (Carriage Return) or as it is more commonly called today the ENTER key.

What I did is set it so once you asked your question, I would automatically press ENTER for you.

So you might input one number, another number, choose addition and then I would type out: ?1+2 followed by the ENTER key.

What they want is when I do something like this, that THEY can see what I'm typing out in command mode and they can decide to press ENTER on it or not.

That's basically it. So they can see what I'm feeding into the command line instead of just typing it all and automatically accepting it.

I actually am making this an option however, called TRUST, a variable that can only be changed when you load the source-code.

I'm still working on it though. I'm actually working on a tool right now that will assist me with further coding into this package.

I will release that tool once it is complete. It is safe and does not use anything like this method.

P#120635 2022-11-13 21:45

[Please log in to post a comment]