POP access for Yahoo is not free. You need to pay for "Mail Plus", which includes, among other things, POP/SMTP access.
If you pay for that service, then the following settings will work:
incoming mail server: pop.mail.yahoo.com with or without Secure Sockets Layer (SSL), authentication: Password. If SSL is off, use port 110, if SSL is on, use port 995 (both are the defaults.)
outgoing mail server: smtp.mail.yahoo.com use Authentication, (SSL can be on or off, doesn't matter. If your internet provider blocks port 25, you can use port 465 instead, wether SSL is on or off.)
Use your yahoo ID as the user name (meaning don't add @yahoo.com) and your password as the password in all cases.
Note again, if you are not a Mail Plus paid customer, their POP server will say that your user name or password are not valid.
Hotmail does not officially provide POP service at all, even for extra money. The only way to get Hotmail access through a desktop mail app is if it has Hotmail support, which, as you have found out, doesn't always work. (Microsoft changes the settings every so often to make it harder to figure out.)