private void readAddresses() throws IOException {
		addresses = new Address[table.getRecordCount()];
		RecordIterator it = table.iterator();
		int deletedID = 1;
		while (it.hasNext()) {
			DBRecord rec = it.next();
			String spaceName = rec.getString(SPACE_NAME_COL);
			int segment = rec.getIntValue(SEGMENT_COL);
			AddressSpace space = factory.getAddressSpace(spaceName);
			if (space == null) {
				GenericAddressSpace sp = new GenericAddressSpace("Deleted_" + spaceName, 32,
					AddressSpace.TYPE_UNKNOWN, deletedID++);
				sp.setShowSpaceName(true);
				space = sp;
			}
			if (space.getSize() <= 32) {
				segment = 0;
			}
			Address addr =
				space.getAddressInThisSpaceOnly(((long) segment) << AddressMapDB.ADDR_OFFSET_SIZE);
			addresses[(int) rec.getKey()] = addr;
		}
	}
Adapter version 0 (the first real adapter)
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/database/map/AddressMapDBAdapterV0.java