private boolean checkForAscii(Program program, PseudoDisassembler pdis, Address target) {
		// check if it could be a good ANSII string
		int asciiLen = checkAnsiString(program.getMemory(), target);
		if (asciiLen > 0) {
			if (desiredDataMemoryContainsReference(program, target, asciiLen)) {
				if (asciiLen > 4) {
					return true; // didn't create a string, but act like we did!
				}
				return false;
			}
			// check if it could be code
			if (!isValidInstruction(pdis, target)) {
				if (clearAllUndefined(program, target, asciiLen)) {
					CreateStringCmd cmd = new CreateStringCmd(target, asciiLen, false);
					cmd.applyTo(program);
				}
			}
			return true;
		}
		return false;
	}
Check if the target reference is to a ascii string

@param program program to check in
@param pdis disassembler to use
@param target target data location
@return true if an ascii string was created.
Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/analysis/OperandReferenceAnalyzer.java