Assembly Guy 72 Posting Whiz

If you want to be sure the sun has died before your encryption can be broken, that's just a few bits more.

There's always a chance their first attempt will be correct. It's small, but it's always there, so you can't quite be 100% sure that the sun will have died.

Assembly Guy 72 Posting Whiz

MemTest86 is a live testing program, what this means is that it runs directly on the flash drive or CD that it is installed on. It is essentially an operating system, that doesn't get installed onto the computer itself.

That's correct but can he boot from any media at all, including USB flash memory?

EDIT: Never mind, he said that the changed the OS.

Assembly Guy 72 Posting Whiz

similar to IBMs statement around that time that "there will never be a need for more than 5 computers in the world" :)

Yeah, there's that one too :)

I think apple because it is really fast and doesn't slow down after 3 years.

Mac OS (much like all OSes) does have its strong points, but a lot of machines running other OSes haven't slowed down too, you know ;) And while it may not relate directly to the OS, Apple have a tendency to try and get people to buy their hardware, for example, it's difficult to impossible to develop an iOS app without a Mac. But from experience, it's more stable than Windows.

Assembly Guy 72 Posting Whiz

It depends on what you're doing as to which size (*sb, *sw, *sd, etc) you use.
And yes, those are all correct.

Assembly Guy 72 Posting Whiz

Another reason bugs can arise is that code gets a bit untidy and hard to follow. For your benifit, I'd suggest looking up about the rep, lodsb, stosb and loop instructions. You'll probably find these quite useful

Using rep and stosb in your purge functions can simplify and condense it down to:

    mov rdi, sint   ; destination index = string
    mov rcx, 21     ; we're going to repeat 21 times
    xor al, al      ; zero-out al
    rep stosb       ; Repeat stosb RCX (21) times

So the next thing I'd do is go through my code and try to condense it into as little as possible, so that when you're trying to debug, it's a lot easier.

I started studyning it about 12 hours before I posted this

Wow, that's quite good progress!

Assembly Guy 72 Posting Whiz

Then there's the issue with holding the steering wheel ;) No, I'm just poking a bit of fun.

Assembly Guy 72 Posting Whiz

or the old school trucker's trick, sunflower seeds. Just the act of taking them one at a time and breaking it open and eating it is enough to keep your minnd from getting bored and putting you to sleep.

I see, that's clever because you won't be looking at the road as much as you should, and that one tightest corner on the mountain road you're driving comes up quicker than you realise, and you have to take evasive action to make the corner. Because of your high speed around the corner, some of your not-so-well-secured load topples out of your truck and down off the montain, crossing an eagle's flight path causing it to over-compensate and veer high into the sky into the path of a light plane over the airport for a training flight. The eagle hits (and gets caught in) the prop, stalling the engine and causing the plane to drop out of the sky, where it and its passengers plummet to their doom onto the wing of a jetliner on the taxi-way (full of fuel of course), causing an unreal, physically impossible Hollywood-style explosion. The massive ball of flames you see in your mirror serves as a further distraction to your sunflower seeds, causing you to veer out of your lane and have a close call with an oncoming vehicle. This shit-pants-worthy near-miss is sobering and you come to the realisation that being alert on the job is highly important and you'll never fall …

Assembly Guy 72 Posting Whiz

I have been told that when entering the US, customs officials can insist that you reveal the password for an engrypted file or partition.

Surely that can't be legal... I mean it is the US, but come on... it can't be legal, can it? Sure they can ask and insist all they want, you're never legally obliged, are you?

However, never underestimate the power of computer forensic tools.

By the same token, computer forensic experts should never underestimate the advanced computer user ;)

Assembly Guy 72 Posting Whiz

I've read through your code a few times, and nothing's standing out to me yet. One technique that tends to help me is to take the code off-screen, get a pen and paper, then make a flowchart of what the code has to do, then write bits of the code over again. This tends to eliminate silly human errors that were made the first time around.
In the mean time, I'll read your code more closely.

Assembly Guy 72 Posting Whiz

I forgot to declare an apple

That sounds like our border's Bio Security Policy here in New Zealand ;)

I've heard of people buying a 1TB HDD and making an innocent 500GB Windows partition on it, then making a TrueCrypt (or even just Linux) partition which occupying the remaining space. They store all of the files they don't want Border Security to find in the non-Windows partition. If Border Security takes your laptop, it'll boot up into Windows, and the only partition Windows will show will be the innocent one, so they find nothing you don't want them to. I've even heard of people using a similar technique on external HDDs, but putting 500GB decals and labels onto a 1TB drive so it's really authentic. The things some people will do...

Nothing wrong with techniques like these - perhaps you have fully legal files, but just want privacy - interlectual property for example.

Assembly Guy 72 Posting Whiz

*nix and Unix is so cryptic in both filenames and parameters

Yeah, that's true. I suppose it's just one of the changes that you have to get used to if you are going to use a POSIX system. I accept that as one of it's flaws (until you learn enough) and admit that I was confused with the more in-depth areas of Linux when I was a newbie, but now that I'm used to it, I find myself somewhat uncomfortable when dealing with some aspects of a Windows environment. I guess it's just what you get used to.

No one in 1969 imagined there would be computers in people's bedrooms that have more processing power and operating systems than the mainframes of 1969. And most certainly it was not originally intended that Unix would be used by every person over 5 years old in the world.

Indeed that is true, I remember a quote from a 1949 Popular Mechanics Magazine (yes, I realise this was 20 years prior to 1969) that read "In the future, computers may weigh no more than five tonnes." Due to people's thinking and mindset back then, Unix (and thus Linux) was only really written for Techy Sysadmins, but if you take into account the tools and utilities which people have written (Gnome, Dolphin and so on) Linux can be used by people as young as five.

Assembly Guy 72 Posting Whiz

Nothing is virus safe...

Whilst that is true, 99.999% of attackers just don't write viruses for Linux because:
a) Most computer users use Windows
b) A lot of Linux users are highly paranoid about security ;)
c) A lot of Linux distros tend to be more secure than Windows; for example Windows has (had?) the autorun feature which a lot of viruses explited to spread easily, but with most (all?) Linux distros, there was no such thing
d) Linux setups are all different - different distros, different configuration etc. so one virus may not work on all Linux installations.

So while you are very true in saying that nothing is virus safe, Linux and Mac are just far less prone to viruses, mainly because of the lak of people writing viruses for them :)

90% of questions are answered with a rude "read the f*ing manpage, idiot"...

Perhaps if you mentioned that you read the manpage as well? Besides which, people have put a lot of time and effort into writing manpages only to have them ignored, so of course they're going to tell you to read the manpage first, if you already haven't.

including questions on how to use man to read manpages.

Did you try man man? ;) No I'm kidding, fair enough about that point.

Of course half those manpages either don't exist or are years out of date...

I don't know what distro you're …

Assembly Guy 72 Posting Whiz

No problem! Please mark the thread as being solved if your question's answered.

Assembly Guy 72 Posting Whiz

That's nice code, but I think it'll replace the character after the space with an underscore; you increment BX before you store the underscore. Also, you're comparing words (cmp AX, [bx]), not bytes, so your code will never find any spaces.

To simplify your code, you might want to make use of the lodsb and loop instructions. See http://faydoc.tripod.com/cpu/lodsb.htm and http://faydoc.tripod.com/cpu/loop.htm for details. Basically, lodsb will load a byte from the segment:offset pair DS:SI into al and increment SI all in one. loop will decrement CX and jump to the specified label if CX != 0. You could also try storing a null character just after the string to denote the end of the string. While it uses up one extra byte in memory, it makes code much tidier and smaller, for example:

array db "imaginary input",0
    mov si, array

.checkloop:
    lodsb           ; Load next byte into AL and increment SI
    cmp al, 0       ; End of string?
    jz .quit        ; If so, quit the loop
    cmp al, ' '     ; Is the character a space?
    jnz .checkloop  ; If not, load the next byte
    dec si          ; Move back to the address of the space
    mov al, '_'     ; Put character to store in AL
    stosb           ; Store the underscore over the space
    jmp .checkloop  ; Loop
.quit:
    ; do something else...

You could use loop with lodsb like this:

    mov si, array
    mov cx, actlen
.checkloop:
    lodsb           ; Load next byte into …
Assembly Guy 72 Posting Whiz

You would have to load the first byte from your string and check to see if it is a space. If it is, then replace that byte with '_'. Otherwise, just check the next byte. You'd repeat this in a loop until you find the end-of-string character.

Which assembly syntax are you using? If you don't know, then are you compiling on DOS, Linux or what?

Assembly Guy 72 Posting Whiz

...downgrade from Windows 7 to Windows 8.

Haha, that's very nicely put! :D

Me? I love Linux. Only one of the computers in my household runs Windows, and that's because it's the one that everyone has to be able to use, and let's face it - Linux isn't for the non-tech-savvy (one exception maybe being Ubuntu). All the other computers run Arch Linux.

Personally, I really dislike Ubuntu. It comes across to me as the distro for people who want to be elitist or stand out from the crowd and brag about using Linux, when deep down, they still love Windows. It's the sort of OS where (much like Windows) you don't really need to know what you're doing, and that takes the fun out of using Linux a little bit. Don't get me wrong, I'm not saying that people who use Ubuntu are trying to be different, that's just who the distro appears to be aimed at to me. Plus, there are some situations which do call for a linux distro that everyone can use; for example at my brother's work, they use Ubuntu for security reasons, but not all of the people there are the type of people who can use Linux with ease.

Anyway, from my perspective, Arch Linux is the best. Once installed, you have just a terminal, development tools, a package manager and core utilities installed. This is perfect for me because I like a small distro that you build-up and personalise. You …

<M/> commented: ok +0
Assembly Guy 72 Posting Whiz

Meh, gaming PCs aren't my thing at all. I like games, sure, but 99.9% of what I do on my computer isn't gaming. Don't take that the wrong way, it's normally progamming or surfing the web do find solutions to programming problems and so on. Games barely ever come into my life these days.

Assembly Guy 72 Posting Whiz

ASP.NET

Right.. I'm not familiar with ASP and all of that, I just knew there was some sort of connection with .NET and ASP somwehere... I'd better have a read-up.

Personally, I'd use only html, css, php and mysql

I'm in the same boat... Quick and straight-forward to learn. Javascript can be useful, but I've only ever really needed it to hide and show some window-like elements on some of my pages.

Assembly Guy 72 Posting Whiz

Login should only ever be done server-side with something like PHP. Anyone know if C# can work with ASP?

Assembly Guy 72 Posting Whiz

You can't compare football to (football) soccer. American football is very violence. I still like baseball more than football, basketball, hockey. I like Soccer it's once every 4 years World Cup.

Learn to accept that in many parts of the world, people call it football, I guess. We also spell neighbour, colour, flavour and a bunch of other words with a 'U' like they were originally spelt before Webster tried to change English.